Я создал образ докера из приложения nodejs. Я хочу запустить экземпляр виртуальной машины с образом докера в экземпляре GCP Compute Egine.
Когда я тестирую изображение локально и перехожу в браузере на http://localhost:8000, все работает. Поэтому я не думаю, что с моим изображением докера что-то не так.
docker run -p 8000:8000 -d <username>/<docker-file>
Я отправил образ докера в репозиторий контейнеров Google с помощью следующих команд:
docker tag <username>/<docker-file> gcr.io/<project-id>/<docker-file>
docker push gcr.io/<project-id>/<docker-file>
Теперь, когда я добавляю URL-адрес (gcr.io/project-id/docker-file) в экземпляр виртуальной машины и жду, пока экземпляр запустится, я получаю сообщение об ошибке при переходе к http://[instance_external_ip]:8000, я получаю сообщение об ошибке ERR_CONNECTION_REFUSED.
Я установил правило брандмауэра, чтобы разрешить входящий трафик через порт tcp = 8000 и диапазон IP-адресов 0.0.0.0/0.
Я что-то упускаю?
Изменить:
Мой докерфайл
FROM node:10
WORKDIR /usr/src/nodejs
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 8080
CMD [ "node", "index.js" ]