<p><strong> 一、Docker 基础命令</strong><br /> 1、启动 docker<br /> systemctl start docker<br /><br /> 2、关闭 docker<br /> systemctl stop docker</p>
讯享网
8 docker 帮助命令
如果忘记了某些命令,可以输入如下命令:
docker –help
二、Docker 镜像命令
1、查看服务器中 docker 镜像列表
docker images
或
docker image ls
2、查看镜像、容器、数据卷所占用的空间:
docker system df
3、搜索镜像
docker search [镜像名]
如可以输入这样的命令:docker search mysql
4、拉取镜像(从 Docker 镜像仓库拉取镜像)
不加 tag版本号,默认拉取 docker 仓库中该镜像的最新版本,相当于命令 docker pull [镜像名]:latest
docker pull [镜像名]
docker pull [镜像名]:tag
docker run [镜像名]:tag
用 Ctrl+c 退出。
下面用实例解释:几个参数:
# -it:这是两个参数,一个是 -i:交互式操作,一个是 -t 终端。
# 这里打算进入 bash 执行一些命令并查看返回结果,因此需要交互式终端。
# bash:放在镜像名后的是命令,这里希望有个交互式 Shell,因此用的是 bash。
docker run -it –rm ubuntu:18.04 bash
6、删除镜像
当前镜像没有被任何容器使用才可以删除。
docker rmi -f 镜像名/镜像ID
删除全部镜像:-a 为显示全部,-q 为只显示ID
docker rmi -f \((docker images -aq)</p> <p>删除所有仓库名为 MySQL 的镜像<br /> docker image rm \)(docker image ls -q MySQL)
用before删除所有在某版本之前的镜像,如删除6.2版本之前的MySQL镜像
docker image rm \((docker image ls -q -f before=MySQL:6.2)</p> <p>强制删除镜像:<br /> docker image rm 镜像名/镜像ID</p> <p><br /> 7、保存镜像<br /> 将我们的镜像保存为 tar 压缩文件,方便镜像转移和保存,可以在任何一台安装了 docker 的服务器上加载这个镜像。<br /> docker save 镜像名/镜像ID -o 镜像要保存的位置和名字</p> <p>如:docker save tomcat -o /myTomcatimg.tar</p> <p>8、加载镜像<br /> 任何装 docker 的地方加载镜像保存文件,使其恢复为一个镜像。<br /> docker load -i 镜像保存文件位置</p> <p><br /><strong>三、Docker 容器命令</strong></p> <p>1、查看正在运行的容器列表<br /> docker ps<br /> # 或<br /> docker container ls</p> <p>2、查看所有容器<br /> 所有正在运行的和停止运行的。<br /> docker ps -a</p> <p>3、运行容器<br /> # -it:表示与容器进行交互式启动<br /> # -d:表示可后台运行容器(守护式运行)<br /> # --name:要给运行的容器起的名字<br /> # /bin/bash:交互路径<br /> docker run -it -d --name 要取的别名 镜像名:tag /bin/bash</p> <p><br /> 如:要启动一个 MySQL ,把它的别名取为 Mysql001,并交互运行,命令如下(这里指定版本号为 6.4):</p> <p># 3.1、拉取 redis 镜像<br /> docker pull mysql</p> <p># 3.2、命令启动<br /> docker run -it -d --name mysql001 mysql:6.4 /bin/bash</p> <p># 3.3、查看已运行容器<br /> docker ps</p> <p># 3.4、停止容器<br /> docker stop 容器名/容器ID<br /> 如:停止前面运行的mysql 容器,命令:docker stop mysql001:</p> <p>4、删除容器<br /> 可以添加 -f 参数,Docker 会发送 SIGKILL 信号给容器。<br /> 删除一个容器<br /> docker rm -f 容器名/容器ID</p> <p>删除多个容器:多个容器名/容器ID 用空格隔空<br /> docker rm -f 容器名/容器ID 容器名/容器ID 容器名/容器ID</p> <p>删除全部容器<br /> docker rm -f \)(docker ps -aq)
5、容器端口与服务器端口映射
-p 宿主机端口:容器端口
例如:使用mysql镜像,可以3306 端口映射到服务器的 3307端口,如果成功的话,那么访问服务器的 3307 端口,就会访问到 docker 中的容器 mysql。命令:
docker run -itd –name mysql001 -p 3307:3306 mysql:6.4 /bin/bash
-p 3307:3306 解析:将容器内部的 3306 端口与 docker 宿主机(docker 安装在哪台服务器,哪台服务器就是宿主机)3307 端口进行映射,那通过外部访问宿主机 3307 端口,即可访问到 docker 容器 3306 端口了。
6、进入容器
当 -i -t 参数一起使用时,可以熟悉的 Linux 命令提示符。
docker exec -it 容器名/容器ID /bin/bash
如进入前面的 mysql001 容器,就可以输入命令 docker exec -it mysql001 /bin/bash。
7、从容器退出到服务器
直接退出
exit
8、启动容器
docker start 容器名/容器ID
11、容器文件拷贝
无论容器是否开启都可以进行拷贝。
docker cp 容器ID/名称:文件路径 要拷贝到外部的路径 | 要拷贝到外部的路径 容器ID/名称:文件路径

13、设置开机自动启动容器
启动容器时,使用 docker run 命令时,添加参数 –restart=always 便表示该容器随 docker 服务启动而自动启动。
docker run -itd –name mysql -p 3307:3306 –restart=always mysql:6.4 /bin/bash
14、挂载
数据挂载:简单来讲,就是将容器内的数据与外部宿主机文件绑定起来,类似一个双持久化,当容器删除时,宿主机文件数据目录仍在,下次启动容器只要将数据目录指向宿主机数据所在位置即可恢复。
-v 宿主机文件存储位置:容器内文件位置
-v 命令可以多次使用,即一个容器可以同时挂载多个文件。
-v 宿主机文件存储位置:容器内文件位置 -v 宿主机文件存储位置:容器内文件位置 -v 宿主机文件存储位置:容器内文件位置
16、导出和导入
16.1导出容器,将导出容器快照到本地文件
如果要导出本地某个容器,使用 docker export 命令。
docker container ls -a
docker export ddfc038b5dc2 > ubuntu.tar
16.2导入容器快照
可以使用 docker import 从容器快照文件中再导入为镜像。
cat ubuntu.tar | docker import - test/ubuntu:v1.0
docker image ls
前面使用过 docker load 来导入镜像存储文件到本地镜像库,同样也可以使用 docker import 来导入一个容器快照到本地镜像库;但是两者有区别。
17、在容器和主机之间复制文件/文件夹
从容器里面拷文件到宿主机
docker cp 容器名:要拷贝的文件在容器里面的路径 要拷贝到宿主机的相应路径
docker cp mysql:/opt/cdc.txt /home/
从宿主机拷文件到容器里面
docker cp 要拷贝的文件路径 容器名:要拷贝到容器里面对应的路径;如果拷贝的内容有重复,会直接覆盖,不会询问。
docker cp /home/ccc.txt mysql:/opt/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/196918.html