docker常用命令

docker常用实例

php5+apache

sudo docker container run --rm --name wordpress --volume "$PWD/":/var/www/html php:5.6-apache

mysql5

sudo docker container run -d --rm --name wordpressdb --env MYSQL_ROOT_PASSWORD=123456 --env MYSQL_DATABASE=wordpress mysql:5.7

docker常用命令

进入一个正在运行的容器

docker exec -it msf /bin/bash

打开一个正在运行的 docker 容器的shell

docker的安装与运行检测

安装略

docker image pull hello-world
docker container run hello-world

Dockerfile文件的编写

FROM node:8.4
COPY . /app
WORKDIR /app
RUN npm install --registry=https://registry.npm.taobao.org
EXPOSE 3000
FROM node:8.4:拉取官方的 node 镜像 冒号表示标签 标签8.4 即8.4版本的 node
COPY . /app:将当前目录下的所有文件(除了.dockerignore排除的路径),拷贝到docker系统中的 /app 下
WORKDIR /app:切换当前路径为/app
RUN npm install:在/app目录下,运行npm install命令安装依赖。使用RUN命令所造成的所有改动都将 都将打包进入 image 文件(CMD命令所执行的语句则是在镜像运行后执行的命令 例如 alias ll='ls -l')
EXPOSE 3000:暴露容器3000端口 允许外部连接

根据 Dockerfile 构建docker镜像

docker image build -t koa-demo:0.0.1 .

-t 用来指定 image文件的名字 还可以用冒号指定标签。

最后的是 Dockerfile 文件所在的路径例中为当前路径。

如果运行成功 就可以看到新生成的 image 文件。

docker image ls

运行一个容器并进入

docker container run -p 8000:3000 -it koa-demo /bin/bash

-p参数:容器的 3000 端口映射到本机的 8000 端口。
-it参数:容器的 Shell 映射到当前的 Shell,然后你在本机窗口输入的命令,就会传入容器。
koa-demo:image 文件的名字(如果有标签,还需要提供标签,默认是 latest 标签)。
/bin/bash:容器启动以后,内部第一个执行的命令。这里是启动 Bash,保证用户可以使用 Shell。

按下 Ctrl + c 停止 Node 进程,然后按下 Ctrl + d (或者输入 exit)退出容器。此外,也可以用docker container kill终止容器运行

查出容器的 ID

docker container ls --all

删除指定的容器文件

docker container rm [containerID]

其他有用的命令

docker 的主要用法就是上面这些 此外还有几个命令 也非常有用

继续运行之前的一个容器

docker container start

前面的docker container run命令是新建容器,每运行一次,就会新建一个容器。同样的命令运行两次,就会生成两个一模一样的容器文件。如果希望重复使用容器 就要使用docker container start命令,它用来启动已经生成、已经停止运行的容器文件。

docker container start [containerID]

停止之前的容器

docker container stop [containerID]

前面的docker container kill命令终止容器运行,相当于向容器里面的主进程发出 SIGKILL 信号。而docker container stop命令也是用来终止容器运行,相当于向容器里面的主进程发出 SIGTERM 信号,然后过一段时间再发出 SIGKILL 信号。

docker container kill [containerID]

这两个信号的差别是,应用程序收到 SIGTERM 信号以后,可以自行进行收尾清理工作,但也可以不理会这个信号。如果收到 SIGKILL 信号,就会强行立即终止,那些正在进行中的操作会全部丢失

显示容器的输出

docker logs

查看 docker 容器的输出,即容器里面 Shell 的标准输出。如果docker run命令运行容器的时候,没有使用-it参数,就要用这个命令查看输出。

docker container exec -it [containerID] /bin/bash

拷贝容器中的文件

docker container cp

从正在运行的 Docker 容器里面,将文件拷贝到本机。下面是拷贝到当前目录的写法。

docker container cp [containID]:[/path/to/file] .

启动/停止/重启 容器

docker start/stop/restart mydocker

你可能感兴趣的:(docker常用命令)