Docker 的优势很容易让Web开发人员所忽略。对于开发运维来说,它被以为太过技术性、没有必要。
作为WEB开发人员,学习运用 Docker 将有助于简化构建、测试和布置 Web 应用程序的进程。
在本文中,将回顾一些根本 Docker 指令。
更多关于 Docker 的运用能够阅读《面向WEB开发人员的Docker》
1. docker build
每个前端开发人员应该知道的第一个指令是 docker build
,此指令用于从 Dockerfile
构建 Docker image
,Dockerfile
是一个包含构建镜像指令的脚本。
docker build
指令的语法如下:
docker build -t image_name dockerfile
-
-t
参数是-tag
参数的缩写方法,答应镜像image
指定称号和可选标签(冒号后面的部分),标签通常用于区别镜像的版别; -
image_name
:镜像称号; -
dockerfile
:dockerfile
文件,能够指定途径path/dockerfile
2. docker images
要列出本地构建的一切 docker
镜像,能够运用 docker images
指令。
假如运转它,应该会看到列出的一切镜像,留意 docker images
等同于指令 docker image ls
。
3. docker run
构建镜像后,如何运转它?便是运用 docker run
指令,语法如下:
docker run -p port:container_port image_name
例如,假如想为标记为镜像发动容器并在端口 80 上拜访它,将运转:
docker run -p 80:80 devpoint:v1
此示例假定 Dockerfile
在端口 80
上公开应用程序,要映射到不同的主机端口,经过 -p
参数的第一部分指定不同的数字,参数是 -p 主机端口:容器端口
。
假如要在后台运转容器,请增加如下 -d
参数:
docker run -d -p 80:80 devpoint:v1
该指令将回来容器 ID 并将终端窗口的控制权交回用户。
当运转一个容器时,Docker 会为其分配一个随机称号,假如不希望是随机称号,能够经过 --name
参数来指定想要的称号。
例如,能够给运转 devpoint
镜像的容器命名为 devpoint-website
,如下所示:
docker run -d -p 80:80 --name devpoint-website devpoint:v1
4. docker ps
要列出一切当时正在运转的容器,能够运转:
docker ps
运转后能够看到列出一切运转的容器,包含容器 ID、称号 和 镜像称号。
5. docker start/stop
要发动或停止容器,语法是:
docker start|stop container_name
或者
docker start|stop container_id
一旦容器停止运转,它将不再出现在正在运转的容器列表中,经过
docker ps
是无法看到,需求列出不在运转的容器,能够运用指令docker ps -a
。
6. docker logs
运用 docker logs
指令,能够查看正在运转的容器的日志。语法是:
docker logs container_name
此指令有助于调试容器中抛出的任何发动问题或异常。
7. docker exec
另一个有用的指令是 docker exec
。此指令能够进入运转的容器中,并运转指令,语法是:
docker exec -it container_name command_to_run
例如,假如想在 devpoint-website
容器中打开一个 shell
,运转:
docker exec -it devpoint-website sh
要退出 shell
,请输入指令 exit
。
8. docker login
为应用程序构建镜像并测试成功运转后,假如需求共享给其他人运用,就需求注册镜像库房。
Docker Hub 是一个公共的镜像库房,任何人都能够拜访和下载存储在其中的镜像,除非用户将存储库设为私有。
要登录到 Docker Hub(假设有一个帐户),能够运用以下指令:
docker login -u username
9. docker push
要将镜像推送到 Docker Hub,需求运用 docker push
指令。语法是:
docker push username/image_name
跟 GitHub 的运用方法相似。
构建 Docker 镜像时的规范约定是:
docker build -t username/image_name:tag_name
例如,假如为我自己的 Docker Hub 帐户构建镜像,运转如下指令:
docker build — t chaoy2010/vue2:v1
Docker Hub 会自动将名为 vue2
的镜像标记为 v1
。
10. docker pull
登录到Docker Hub 后,能够运用以下 docker pull
指令拉取现有镜像:
docker pull chaoy2010/vue2:v1
总结
学习这些根本的 Docker 指令能够进步开发人员的工作效率。