常用命令
# 配置 Docker 守护进程的行为和参数vi /etc/docker/daemon.json
# 停止docker服务sudo systemctl stop docker# 启动 Docker 服务:sudo systemctl start docker# 重新加载systemd守护程序的配置文件,不会重启服务(配置文件:/etc/systemd/system/)
systemctl daemon-reload
# 通过systemd重启docker服务(用于配置更改、服务更新或修复问题等情况,影响该主机上运行的所有容器)
systemctl restart docker# 重启容器docker restart <容器名称或容器ID># 重启守护进程
systemctl daemon-reload
# 开机启动
systemctl enabledocker# 查看docker状态
systemctl status docker# 查看docker 概要信息docker info
# 运行一个docker 指定容器docker run xxx
systemctl start docker与start docker 区别
在基于 Systemd 的 Linux 发行版上(如 Ubuntu 16.04 及以后版本、CentOS 7 及以后版本等),
sudo systemctl start docker
和
sudo start docker
这两个命令有一些区别:
sudo systemctl start docker
:这是使用 Systemd 的标准命令来启动 Docker 服务。Systemd 是一个初始化系统,用于管理系统的启动、运行和关闭等过程。使用该命令可以确保 Docker 以 Systemd 的方式正确启动,同时还可以查看与 Docker 相关的日志。sudo start docker
:这是一种较早的 SysVinit 启动方式的命令,适用于早期版本的 Linux 发行版。在现代基于 Systemd 的系统上,start
命令可能会被解释为一个 Systemd 单元,从而导致一些不一致性。
如果你的系统正在使用 Systemd,建议使用
sudo systemctl start docker
来启动 Docker 服务,这是更标准和推荐的做法。SysVinit 命令在一些现代 Linux 发行版中仍然可以使用,但在 Systemd 环境中可能不太合适。
查看当前系统正在使用的是哪个服务
ps-aux|grep systemd
root 4470.10.230165685280 ? S<s 8月09 1:13 /lib/systemd/systemd-journald
root 4850.00.0250205100 ? Ss 8月09 0:02 /lib/systemd/systemd-udevd
systemd+ 8850.00.0249482968 ? Ss 8月09 0:36 /lib/systemd/systemd-resolved
systemd+ 8860.00.090912524 ? Ssl 8月09 0:00 /lib/systemd/systemd-timesyncd
ps-aux|grep sysvinit
user+ 17610380.00.0176842796 pts/3 S+ 11:07 0:00 grep--color=auto sysvinit
# 或通过下面命令直接查看# 运行命令 ps -p 1 -o comm= 可以用于查看 PID 为 1 的进程的名称,从而确定正在运行的 init 进程的类型。# 在 Linux 系统中,PID 1 的进程通常是系统初始化进程,其类型可能是 Systemd、SysVinit 或其他# 如果输出结果为 systemd,则表示系统正在使用 Systemd 初始化系统。ps-p1-ocomm=
可以明显看到当前系统使用的是systemd服务
举例
docker run --rm -it -v ${CURRENT_DIR}:/host xx.xx.info:xxx/xxx:2.0.0 /bin/bash
这个命令是在 Docker 中运行一个容器,并与容器交互,允许你在容器中执行命令。下面是命令中各个参数的解释:
docker run
: 运行一个新的容器。--rm
: 容器退出时自动删除容器。-it
: 创建一个交互式的终端。-v ${CURRENT_DIR}:/host
: 将当前目录挂载到容器中的/host
目录。xx.xx.info:xxx/xxx:2.0.0
: Docker 镜像的名称和版本号。/bin/bash
: 在容器中运行的命令,这里是启动一个 Bash 终端。
这个命令的作用是启动一个容器,将当前目录挂载到容器中,并在容器中启动一个 Bash 终端,以便你可以在容器内执行命令和操作文件。
请注意,
${CURRENT_DIR}
是一个环境变量,表示当前目录。你需要确保在运行这个命令之前,你已经进入到了希望挂载到容器中的目录。
另外,
xx.xx.info:xxx/xxx:2.0.0
是一个 Docker 镜像的名称和版本号,你需要将其替换为你实际的镜像名称和版本号。
版权归原作者 Tavi_ 所有, 如有侵权,请联系我们删除。