Создание образа с помощью docker и docker compose - PullRequest
0 голосов
/ 18 октября 2019

Я новичок в Docker и пытаюсь создать образ Docker и использовать контейнер Docker, поэтому я сделал следующее:

Мой Dockerfile:

FROM ubuntu:16.04

# # Front stack
# RUN apt-get install -y npm && \
#     npm install -g @angular/cli

FROM python:3.6

RUN apt-get update
RUN apt-get install -y libpython-dev curl build-essential unzip python-dev libaio-dev libaio1 vim 
rpm2cpio cpio python-pip dos2unix

RUN mkdir /code
COPY ./requirements.txt /code/requirements.txt
RUN pip install -r /code/requirements.txt
RUN pip install --upgrade pip
COPY . /code/
WORKDIR /code
ENV PYTHONPATH=/code/py_lib
CMD ["bash", "-c", "tail -f /dev/null"]

Мой файл DockerComposeis:

version: '3.5'
services:
   testsample:
       image: toto/test-sample
    restart: unless-stopped
    env_file:
        - .env        
    command: bash -c "pip3 install -r requirements.txt && tail -f /dev/null"
    # command: bash -c "tail -f /dev/null"
    volumes:
        - .:/code

Я выполнил следующие команды:

сборка докера. -f Dockerfile

изображения докера

enter image description here

docker-compose up

Это дало мне ошибку:

Pulling testsample (toto/test-sample:)...
ERROR: The image for the service you're trying to recreate has been removed. If you continue, volume 
data could be lost. Consider backing up your data before continuing.

Continue with the new image? [yN]y
Pulling testsample (toto/test-sample:)...
ERROR: pull access denied for toto/test-sample, repository does not exist or may require 'docker 
login': denied: requested access to the resource is denied

Я попытался войти в Docker, и я могу подключиться.

Так что может привести к этой проблеме?

Ответы [ 3 ]

1 голос
/ 18 октября 2019

Вы должны указать имя тега при создании образа Docker, используя файл Docker, как показано ниже:

docker build -t toto/test-sample -f Dockerfile .

-t здесь для имени тега -f здесь для сообщения имениDockerfile (в данном случае это опциональный, так как Dockerfile является именем по умолчанию)

1 голос
/ 18 октября 2019

Если вы поместите Dockerfile в тот же каталог, что и ваш файл docker-compose.yml, вы можете сделать следующее:

version: '3.5'
services:
   testsample:
       image: toto/test-sample
       build:
         context: .
         dockerfile: Dockerfile
       restart: unless-stopped
       env_file:
         - .env        
       volumes:
         - .:/code

Затем выполните:

docker-compose up --build -d

В противном случае, если у вас просто возникают проблемы при создании образа, вам просто нужно сделать:

docker build -t toto/test-sample .
0 голосов
/ 18 октября 2019

команда построения должна быть:

docker build -t toto/test-sample .
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...