Почему контейнер завершает работу сразу после выполнения команды docker run? - PullRequest
0 голосов
/ 09 января 2019

Я запускаю docker в первый раз, и мой контейнер завершает работу сразу после команды docker run. docker ps показывает мне пустой список. Когда я запускаю docker ps -a, я получаю результаты всех контейнеров, которые я выдвинул в состоянии Exited.

Я попытался использовать команду -ti, но контейнер перешел в состояние выхода. Я использую следующие команды для запуска файла: $ sudo docker build -t test_api3 . и $ sudo docker run -p 8080:3000 -ti test_api3 или ($ sudo docker run -p 8080:3000 -d test_api3)

Dockerfile

    FROM node:8
    WORKDIR /usr/src/app
    COPY package*.json ./
    RUN npm install
    COPY . .
    EXPOSE 3000
    CMD [ "npm","start" ]

package.json

    {
      "name": "firstapp",
      "version": "1.0.0",
      "description": "first demo app",
      "main": "http-server.js",
      "scripts": {
        "start": "node http-server.js"
      },
      "keywords": [
        "S"
      ],
      "author": "Shilpa",
      "license": "ISC"
    }

HTTP-server.js

    const http = require('http');

    const hostname = '127.0.0.1';
    const port = 3000;

    const server = http.createServer((req, res) => {
      res.statusCode = 200;
      res.setHeader('Content-Type', 'text/plain');
      res.end('Hello World\n');
    });

    server.listen(port, hostname, () => {
      console.log(`Server running at http://${hostname}:${port}/`);
    });

1 Ответ

0 голосов
/ 09 января 2019

Я использую Ubuntu OS, и она работает (дайте мне знать ваши настройки, если она все еще не может работать). Единственная проблема с кодом заключается в том, что вы не можете использовать адрес 127.0.0.1 и должны использовать 0.0.0.0 в вашем http-server.js. Для получения дополнительной информации обратитесь к ссылке ниже

https://forums.docker.com/t/network-param-for-connecting-to-127-0-0-1-in-container/2333

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...