docker常用命令

docker常用命令

首页休闲益智Fisher Cat更新时间:2024-06-23
常用命令

docker version # 显示docker的版本信息 docker info # 显示Docker的系统信息,包括镜像和容器的数量 docker 命令 --help # 帮助命令

帮助文档地址 https://docs.docker.com/engine/reference/commandline/commit/

docker容器内存限制,参考链接:https://www.cnblogs.com/sharesdk/p/10109105.html?ivk_sa=1024320u

-m 256M --memory-swap 512M -m, --memory # 内存限制大小,单位可以为 b,k,M,g;最小为4M --memory-swap # 内存 交换分区大小总限制1、镜像相关命令。

docker images # 列出本地主机上的镜像。 docker pull # 获取一个新的镜像 docker search # 命令来搜索镜像 docker rmi # 删除镜像

我们可以从 Docker Hub 网站来搜索镜像,Docker Hub 网址为: https://hub.docker.com/

2、容器相关命令

docker run -itd centos /bin/bash # 启动容器 -i: 交互式操作。 -t: 终端。 -d:后台运行。 centos: centos 镜像。 /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。 docker exec -it <容器 ID> /bin/bash # 进入容器 exit # 退出容器 docker ps -a # 查看所有的容器 docker stop <容器 ID> # 停止容器 docker start <容器 ID> # 启动一个已停止的容器 docker restart <容器 ID> # 重启一个容器 docker rm -f <容器 ID> # 删除一个容器,-f表示强制删除(运行中的都能删掉) docker rm -v [容器id或名] 删除容器及其数据卷 docker container prune # 清理掉所有处于终止状态的容器 # -p 标识来指定容器端口绑定到主机端口 -P :是容器内部端口随机映射到主机的高端口。 -p : 是容器内部端口绑定到指定的主机端口。 docker port <容器 ID> # 查看容器的端口映射的快捷方式 docker export <容器 ID> > ./ubuntu.tar # 导出容器 cat ubuntu.tar | docker import - test/ubuntu:v1 # 导入容器

# 登录dockerhub docker login # 标记镜像 docker tag yqsh/mysql-centos:2.0 18908046013/mysql-centos:1.0 # 推送镜像 docker push 18908046013/mysql-centos:1.0 # 搜索镜像 docker search 18908046013/mysql-centos3、创建镜像

当我们从 docker 镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。

①更新镜像

runoob@runoob:~$ docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2

各个参数说明:

-m: 提交的描述信息
-a: 指定镜像作者
e218edb10161:容器 ID
runoob/ubuntu:v2: 指定要创建的目标镜像名

我们可以使用 docker images 命令来查看我们的新镜像 runoob/ubuntu:v2

②构建镜像
创建一个 Dockerfile 文件

runoob@runoob:~$ cat Dockerfile FROM centos:6.7 MAINTAINER Fisher "fisher@sudops.com" RUN /bin/echo 'root:123456' |chpasswd RUN useradd runoob RUN /bin/echo 'runoob:123456' |chpasswd RUN /bin/echo -e "LANG=\"en_US.UTF-8\"" >/etc/default/local EXPOSE 22 EXPOSE 80 CMD /usr/sbin/sshd -D

然后,我们使用 Dockerfile 文件,通过 docker build 命令来构建一个镜像。

runoob@runoob:~$ docker build -t runoob/centos:6.7 . Sending build context to Docker daemon 17.92 kB Step 1 : FROM centos:6.7 ---> d95b5ca17cc3 Step 2 : MAINTAINER Fisher "fisher@sudops.com" ---> Using cache ---> 0c92299c6f03 Step 3 : RUN /bin/echo 'root:123456' |chpasswd ---> Using cache ---> 0397ce2fbd0a Step 4 : RUN useradd runoob ......

参数说明:

-t :指定要创建的目标镜像名 . :Dockerfile 文件所在目录,可以指定Dockerfile 的绝对路径

我们可以使用新的镜像来创建容器

runoob@runoob:~$ docker run -t -i runoob/centos:6.7 /bin/bash [root@41c28d18b5fb /]# id runoob uid=500(runoob) gid=500(runoob) groups=500(runoob)

从上面看到新镜像已经包含我们创建的用户 runoob。

设置镜像标签

我们可以使用 docker tag 命令,为镜像添加一个新的标签。

runoob@runoob:~$ docker tag 860c279d2fec runoob/centos:dev

docker tag 镜像ID,这里是 860c279d2fec ,用户名称、镜像源名(repository name)和新的标签名(tag)。
使用 docker images 命令可以看到,ID为860c279d2fec的镜像多一个标签。

runoob@runoob:~$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE runoob/centos 6.7 860c279d2fec 5 hours ago 190.6 MB runoob/centos dev 860c279d2fec 5 hours ago 190.6 MB runoob/ubuntu v2 70bf1840fd7c 22 hours ago 158.5 MB ubuntu 14.04 90d5884b1ee0 6 days ago 188 MB php 5.6 f40e9e0f10c8 10 days ago 444.8 MB nginx latest 6f8d099c3adc 13 days ago 182.7 MB mysql 5.6 f2e8d6c772c0 3 weeks ago 324.6 MB httpd latest 02ef73cf1bc0 3 weeks ago 194.4 MB ubuntu 15.10 4e3b13c8a266 5 weeks ago 136.3 MB hello-world latest 690ed74de00f 6 months ago 960 B centos 6.7 d95b5ca17cc3 6 months ago 190.6 MB training/webapp latest 6fae60ef3446 12 months ago 348.8 MB

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved