如何用一个不同的命令启动停止的Docker容器?

我想用一个不同的命令启动一个停止的Docker容器,因为默认的命令崩溃 – 这意味着我不能启动容器,然后使用“docker exec”。 基本上我想开始一个shell,所以我可以检查容器的内容。 幸运的是我用-it选项创build了容器!

如何在Docker容器中用模式初始化MySQL数据库?

我正在尝试创build一个具有MySQL数据库的容器,并将模式添加到这些数据库。 我目前的Dockerfile是: FROM mysql MAINTAINER (me) <email> # Copy the database schema to the /data directory COPY files/epcis_schema.sql /data/epcis_schema.sql # Change the working directory WORKDIR data CMD mysql -u $MYSQL_USER -p $MYSQL_PASSWORD $MYSQL_DATABASE < epcis_schema.sql 为了创build容器,我遵循Docker上提供的文档并执行以下命令: docker run –name ${CONTAINER_NAME} -e MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} -e MYSQL_USER=${DB_USER} -e MYSQL_PASSWORD=${DB_USER_PASSWORD} -e MYSQL_DATABASE=${DB_NAME} -d mvpgomes/epcisdb 但是当我执行这个命令的时候Container没有被创build,并且在Container的状态下可以看到CMD没有成功执行,实际上只有mysql命令被执行。 无论如何,有没有办法用模式初始化数据库,还是我需要手动执行这些操作?

我如何为Docker创build自己的基础映像?

根据Docker文档 ,要构build自己的图像,必须始终使用FROM指令指定基本图像。 显然,在Docker索引中有很多图片可供select,但是如果我想构build自己的图片呢? 那可能吗? 如果我理解正确,图像base是由Ubuntu构build的,我想用Debian图像进行实验。 另外,我想真正了解Docker是如何工作的,而base映像对我来说仍然是一个黑盒子。

如何在Docker机器中安装本地卷

我正在尝试使用docker-compose的docker-machine。 文件docker-compose.yml的定义如下: web: build: . command: ./run_web.sh volumes: – .:/app ports: – "8000:8000" links: – db:db – rabbitmq:rabbit – redis:redis 运行docker-compose up -d一切正常,直到试图执行命令并产生一个错误: 无法启动容器b58e2dfa503b696417c1c3f49e2714086d4e9999bd71915a53502cb6ef43936d:[8]系统错误:exec:“./run_web.sh”:stat ./run_web.sh:没有这样的文件或目录 本地卷不安装到远程机器。 build议使用webapps代码安装本地卷的策略是什么?

Docker:改变目录命令

在docker工人我想这样做: git clone XYZ cd XYZ make XYZ 但是因为没有cd命令,我必须每次都传入完整path(使XYZ / fullpath)。 任何好的解决scheme?

docker工人:“构build”需要1个参数。 请参阅“docker build –help”

尝试按照说明从docker网站build立docker图像。 https://docs.docker.com/examples/running_redis_service/ 这是我得到的错误将按照文档上的说明和使用此Dockerfile FROM ubuntu:14.04 RUN apt-get update && apt-get install -y redis-server EXPOSE 6379 ENTRYPOINT ["/usr/bin/redis-server"] sudo docker build -t myrepo/redis docker: "build" requires 1 argument. See 'docker build –help'. 如何解决?

Docker -t选项分配一个伪TTY的困惑

这个选项到底是做什么的? 我一直在阅读很多关于TTY的内容,但我仍然感到困惑。 我玩了没有-t和只是-i ,看起来像程序,希望用户input抛出一个错误,没有-t 。 为什么重要的是启用伪TTY?

在Dockerfile中,如何更新PATH环境variables?

我有一个dockerfile从源代码下载和构buildGTK,但下面的行不更新我的图像的环境variables: RUN PATH="/opt/gtk/bin:$PATH" RUN export PATH 我读过,我应该使用ENV设置环境值,但下面的指令似乎也不工作: ENV PATH /opt/gtk/bin:$PATH 这是我的整个Dockerfile: FROM ubuntu RUN apt-get update RUN apt-get install -y golang gcc make wget git libxml2-utils libwebkit2gtk-3.0-dev libcairo2 libcairo2-dev libcairo-gobject2 shared-mime-info libgdk-pixbuf2.0-* libglib2-* libatk1.0-* libpango1.0-* xserver-xorg xvfb # Downloading GTKcd RUN wget http://ftp.gnome.org/pub/gnome/sources/gtk+/3.12/gtk+-3.12.2.tar.xz RUN tar xf gtk+-3.12.2.tar.xz RUN cd gtk+-3.12.2 # Setting environment variables before […]

如何获得dockerregistryv2的图像列表

我正在使用dockerregistryv1,我有兴趣迁移到新版本v2。 但我需要一些方法来获取registry上的图像列表; 例如与registryv1我可以执行GET请求到http://myregistry:5000/v1/search? 结果是: { "num_results": 2, "query": "", "results": [ { "description": "", "name": "deis/router" }, { "description": "", "name": "deis/database" } ] } 但我找不到官方文档类似的东西获取registry上的图像列表。 任何人都知道在新版本v2上做到这一点?

docker-compose ports vs揭露有什么区别?

在docker-compose.yml文件中,有ports和expose选项。 他们有什么不同?