Docker ubuntu映像无效

时间:2018-06-01 18:34:08

标签: ubuntu docker

我正在尝试从docker图像创建一个docker容器,但它没有启动,我也没有看到错误。首先我尝试了这个Docker文件:

FROM php:7.0-apache
MAINTAINER Tony Lea <tony.lea@thecontrolgroup.com>

EXPOSE 80

RUN docker-php-ext-install pdo pdo_mysql mysqli

RUN apt-get update && \
    apt-get install -qqy \
      libmcrypt-dev \
      git-core \
      zlib1g-dev && \
    docker-php-ext-install \
      bcmath \
      mbstring \
      mcrypt \
      zip

WORKDIR /var/www/html

ENV COMPOSER_HOME=/var/www/html

RUN curl -sS https://getcomposer.org/installer | php && \
    mv composer.phar /usr/local/bin/composer

在docker compose中我使用了这段代码:

version: '3'
services:
db:
  image: mysql
  restart: always
  environment:
    MYSQL_ROOT_PASSWORD: password

  volumes:
    - ./mydata:/var/lib/postgresql/data
  ports:
    - "52000:3306"
web:
  build: .
  volumes:
    - .:/var/www/html
  ports:
    - "3000:80"

我第一次运行它,它工作,我停止容器并删除它们,当我尝试docker-compose up我没有看到任何错误和mysql容器正在运行但是ubuntu容器已创建,但它没有运行当我尝试开始时,我没有看到错误。

我尝试使用docker run ubuntu创建一个容器:18.04它正在创建一个容器,但它没有启动我不知道刚刚发生了什么。当我运行docker ps -a时,我看到了:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS                     NAMES
eae0840f282a        ubuntu:18.04        "/bin/bash"              16 seconds ago      Exited (0) 14 seconds ago                             priceless_haibt
4689e8787905        ubuntu:18.04        "/bin/bash"              25 seconds ago      Exited (0) 23 seconds ago                             sad_williams
1284e06b22a8        mysql               "docker-entrypoint.s…"   12 minutes ago      Up 3 minutes                0.0.0.0:52000->3306/tcp   kyolab_db_1
7db2c0c987cd        kyolab_web          "/bin/bash"              12 minutes ago      Exited (0) 2 minutes ago                              kyolab_web_1

我试过这个docker run -d -p 3000:80 --name = nilay ubuntu但没有运气

我该怎么办?

1 个答案:

答案 0 :(得分:1)

您的图片运行/bin/bash,然后退出。您需要在docker run中指定要运行的命令,或向CMD添加Dockerfile默认命令。

如果您想运行交互式shell,则无法使用-d,而是需要-it