Docker环境的命令不是很熟悉,很多时候遇到要用的时候就要花费很多时间问度娘,还是自己在博客里面记录一下,方便后面查看。(本篇文章是基于Centos7编写,其他版本可能有所不同)
启动和停止Docker
启动和停止Docker容器的两种方式:
- 使用
systemctl
命令启动和停止
1 | systemctl start docker # 启动Docker |
- 使用后端运行方式启动,使用杀进程的方式关闭
1 | dockerd & # 后台运行方式启动 |
如果需要Docker在开启后自动启动使用下面命令:
1 | 两个命令二选一 |
查看Docker运行状态
查看Docker是否正常运行使用下面命令:
1 | systemctl status docker |
加载已有镜像
加载已有的镜像到Docker中:
1 | docker load < xxx.tar # xxx.tar表示镜像文件 |
查看Docker内的镜像列表
可以通过以下两个命令实现:
1 | docker image list |
启动Docker镜像生成容器
生成容器的命令根据实际使用确定,下面是我常用的命令:
1 | docker run -dit --name [容器名称] -v [容器目录]:[宿主挂载目录] -p [IP:端口:端口] [镜像ID] /bin/bash |
说明:
- 容器名称根据实际情况自定义
- 容器目录和宿主挂载目录,表示在容器中可以访问宿主机指定目录下的所有文件
- IP和端口,一般请求进入是请求宿主机的端口,这个时候就需要将此端口和容器关联,可以配置多个
- 镜像ID,这个可以通过查看镜像列表获取,表示你将那个镜像加载为容器
示例:
1 | docker run -dit --name my_container_name -v /home/my/:/home/my/ -p 0.0.0.0:8080:8080 -p 0.0.0.0:9090:9090 edf312c432d232 /bin/bash |
查看容器列表
查看容器列表有几个不同的命令,我只是用一个如下:
1 | docker ps -a |
进入容器
容器启动后,需要进入容器做相关的操作,这个时候就需要进入到容器内部。
1 | 容器ID可以通过查看容器列表获得 |
删除镜像和容器
- 删除镜像
1 | docker rmi [镜像ID] # 如果镜像有关联容器,将执行失败 |
- 删除容器
1 | docker rm [容器ID] # 删除容器,如果容器在运行貌似也是删不掉的 |
不进入容器情况下在容器内执行命令☆☆☆☆☆
这个很重要,而且经常遇到,比如启动容器内的tomcat,进入容器执行是可以的,但是在外部执行方便。执行命令如下:
1 | docker exec -d [容器名称] /bin/bash -c [需要执行的命令] -g "daemon off;" |
示例:
1 | docker exec -d my_container_name /bin/bash -c "nohup java -jar /home/my/xxx.jar > /home/my/log/xxx.log 2>&1 &" -g "daemon off;" |
本文作者:IT-CRUD
原文地址:http://blog.itcrud.com/blogs/2020/12/linux-docker-commands
版权归作者所有,转载请注明出处