一、docker build
使用Dockerfile创建镜像,在testlink的文件夹下有Dockerfile,
Dockerfile内容如下
FROM eboraas/apache-php
RUN mkdir -p /var/www/html/testlink && mkdir -p /var/testlink/logs && mkdir -p /var/testlink/upload_area && chown www-data:www-data /var/testlink -R
ADD . /var/www/html/testlink
RUN chown www-data:www-data /var/www/html/testlink/gui/templates_c -R
进入testlink的目录,使用当前目录的Dockerfile创建镜像。
执行命令docker build -t testlink .
其中-t 指定了镜像的名称,. 这一点表示读取当前目录下的Dockerfile文件。
我们查看下当前的本地镜像,有一个名为testlink的镜像,如果之前已经有一个名为testlink的镜像,会把之前的那个设置为none
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
testlink latest 3131b46ef501 3 minutes ago 451MB
<none> <none> 1b854f583b24 44 hours ago 451MB
二、docker inspect
获取容器/镜像的元数据docker inspect 3131b46ef501
可得知镜像内的testlink使用的是80端口
三、docker run
创建一个新的容器:docker run -it -p 9001:80 testlink
使用testlink镜像,以后台模式启动一个容器,将容器的80端口映射到主机的9001端口
使用docker ps
来查看我们正在运行的容器
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8d4db3676cbc testlink "/usr/sbin/apache2ct…" 2 minutes ago Up 2 minutes 443/tcp, 0.0.0.0:9001->80/tcp festive_davinci
docker logs [ID或者名字] 可以查看容器内部的标准输出
docker logs -f 8d4db3676cbc
停止应用容器
docker stop 8d4db3676cbc
进入容器
docker attach 8d4db3676cbc
或者docker exec -it 8d4db3676cbc /bin/bash