本文的目标是懂得容器开辟在目标情况中安排的端到端流程,并列出这些操作所需的 Docker 敕令。

1. 介绍
全部流程包含应用代码、依附软件和设备来开辟容器映像,在开辟情况中运行和测试容器,将容器映像宣布到 Docker Hub,以及最后的安排和在目标情况中运行容器。
2. 开辟容器映像
在构建容器映像之前,你须要创建一个 dockerfile,它包含了所须要的信息。请参考这里来编制一个 dockerfile。
2.1 构建 Docker 容器
这个敕令会应用当前目次下的 Dockerfile。如不雅 dockerfile 应用了其它文件名或者放在其它地位,可以应用 -f 参数来指定 dockerfile 的名称。“docker build” 敕令会构建容器映像,这个容器映像的名称由 “-t” 参数指定。
$docker build -t myapp .
2.2 Docker 映像定名规范
格局如下:
NameSpace/Repository:Version
如今我们按膳绫擎的规范来构建 Docker 映像:
$docker build -t saravasu/techietweak:001 .
我们可以应用“docker tag”敕令大年夜已经存在的映像创建新的映像。“docker tag”敕令会鄙人面解释。
2.3 列出 Docker 中所有映像
3. 运行容器
3.1 启动 Docker 容器
应用“docker run”敕令来启动 Docker 容器。
$docker run -d -p 8080:8080 saravasu/techietweak:001
“-d” 参数会让容器以自力的模式来运行容器,如许即使终端封闭了容器仍然会保持运行。
“-p” 用于映射容器。比如,“-p 8080:8080” 的第一个端标语用在 Docker 主机上,第二个端标语是在 Docker 容器中应用的。根据这个参数的设置,所有对 Docker 主机端口的数据传输都邑被转发到对应的 Docker 容器端口。
3.2 查看运行中的容器
$docker build -t containername .
本文假设您已经在开辟和目标情况中安装了 Docker 引擎。有关安装解释请参阅 6.3。
$docker ps
大年夜膳绫擎的输出我们可以看到 Docker 容器以 “trusting_snyder” 这个名字在运行。
如不雅要列出所有容器,而不管其状况若何,应用 “-a” 参数。
$docker ps -a
3.3 显示运行中容器的┞菲握台日记
$docker logs <containerName>
ContainerName(容器名称) 可以经由过程 “docker ps” 敕令找到。
3.4 登入容器
$docker exec -it containerId /bin/bash
$docker images
3.5 停止容器运行
$docker stop <containername>
3.6 大年夜 Docker 中删除容器映像
$docker rm imageId
应用 “docker images” 或 “docker images -a” 敕令找到 imageId(映像 ID)。
膳绫擎的敕令会用容器中的 “bash” shell 给出提示。
$docker rmi -f <List Of Image Ids>
膳绫擎的敕令会强迫删除指定的映像。
3.7 清理 Docker / 删除本地 Docker 中所有容器映像
$docker rmi -f $(docker images | tr -s ' ' ' ' | cut -d' ' -f3)
Docker 容器映像可以宣布到本地库或公共的 Docker Hub」?现情况所应用的敕令的操作过程一样。为了将你的 Docker 映像宣布到 Docker Hub,你得先在 http://hub.docker.com 创建本身的定名空间和仓库。
我本身的定名空间是 “saravasu”,当前演习应用的仓库是 “techietweak”。
4.1 登录 Docker Hub
$docker login
4. 宣布容器映像
$docker login
如不雅你想登录本地库,请先供给 URL。如不雅没有指定 URL,那么这个敕令会登录 Docker Hub。
$docker login http://localhost:8080
4.2 标记容器映像
在把容器映像推送到 Docker Hub 之前,必须按指定的格局对其进行标记:<Namespace>/<Repository>:<Version>。如不雅你没有指定版本(version),它会应用默认的 “default”。下面的敕令演示了标记映像:
$docker tag myapp:latest saravasu/techietweak:001
4.3 将 Docker 映像推送到 Docker Hub
$docker push saravasu/techietweak:001
4.4 在 Docker Hub 中检查容器映像
如今应用你的┞匪号登录 Docker Hub 并检查映像的仓库中进行检查。
如不雅你只是在本地应用,那么你可以随便为 Docker 容器定名。它可以像膳绫擎那边简单的定名为“myApp”。然则如不雅你想将映像宣布到 Docker Hub,就须要遵守特定的定名规范。这个规范有助于 Docker 对象将容器映像宣布到精确的定名空间和仓库。
5 安排容器
5.1 拉取 Docker 容器映像
在主机的目标情况中登录 Docker Hub 并大年夜 Docker Hub 拉取容器映像。如不雅你想大年夜私有的船厂(指 Docke 映像库)中拉取,须要应用敕令 “$docker login <hostname>” 来指定私有仓船厂的主机名(hostname)。
因为膳绫擎的敕令没有指定主机名称,它会登录 https://hub.docker.com。
$docker pull saravasu/techietweak:001
5.2 检查映像
docker pull 敕令会大年夜 Docker Hub 下载容器映像。我们可以应用 “docker images” 敕令来对其进行检查。
推荐阅读
【海外风向标】入职前做好这十件事,保证不用做“羞羞的CIO”
CIO在面对同业时经常会开如许一个打趣:“CIO就是职业生活停止了(Career Is Over)”。这个打趣也大年夜侧面反竽暌钩了一个现象,企业技巧引导者的平均任期大年夜约只有四年。>>>详细阅读
本文标题:从开发到部署会用到的 Docker 命令
地址:http://www.17bianji.com/lsqh/37833.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示