Skip to content

Docker ​

安装Docker ​

脚本安装 ​

bash
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

配置用户 ​

bash
sudo groupadd docker
sudo gpasswd -a $USER docker
newgrp docker
sudo groupadd docker
sudo gpasswd -a $USER docker
newgrp docker

启动Docker ​

bash
systemctl start docker
systemctl start docker

配置Docker ​

Docker的配置文件通常为/etc/docker/daemon.json(不存在的话可以创建)。

WARNING

  • JSON格式,格式错误Docker会启动不起来;
  • 修改配置后通常需要重启Docker方可生效;

配置镜像仓库 ​

bash
{
    "insecure-registries":[
        "$hostname"
    ]
}
{
    "insecure-registries":[
        "$hostname"
    ]
}

重启Docker ​

bash
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl daemon-reload
sudo systemctl restart docker

Docker常用指令 ​

特权模式下以entrypoint命令运行镜像 ​

sh
docker run --privileged=true -d --entrypoint sh $image -c "sleep 9999"
docker run --privileged=true -d --entrypoint sh $image -c "sleep 9999"

指定端口和volume挂载运行镜像 ​

sh
docker run --name $name -p $hostPort:$containerPort -v $hostPath:$containerPath -d $image /bin/sh "sleep 999"
docker run --name $name -p $hostPort:$containerPort -v $hostPath:$containerPath -d $image /bin/sh "sleep 999"

删除所有tage为none的容器 ​

sh
docker images|grep none|awk '{print $3}'|xargs docker rmi -f
docker images|grep none|awk '{print $3}'|xargs docker rmi -f

容器转储为tgz文件 ​

sh
docker save $image1 $image2 | gzip > $name.tgz
docker save $image1 $image2 | gzip > $name.tgz

登录docker仓库 ​

sh
docker login $hostname -u $name -p $password
docker login $hostname -u $name -p $password

查看Docker服务日志 ​

sh
journalctl -u docker --no-pager
journalctl -u docker --no-pager

为当前用户赋予Docker权限 ​

sh
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker

~~~我是有底线的~~~