Docker离线安装与基础操作

离线安装

安装注册服务等步骤需切换至root用户或允许sudo的用户。

下载docker离线包:

https://download.docker.com/linux/static/stable/x86_64/docker-20.10.17.tgz

解压安装离线包

tar -zxvf docker-20.10.17.tgz

复制解压文件到/usr/bin/下

cp docker/* /usr/bin/

注册docker为service服务,在/etc/systemd/system/目录下新增docker.service文件
vi /etc/systemd/system/docker.service

输入以下内容

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
  
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
# 如果有搭建私有镜像仓库,--insecure-registry设置为私有镜像仓库地址。
ExecStart=/usr/bin/dockerd --selinux-enabled=false --insecure-registry=127.0.0.1
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
  
[Install]
WantedBy=multi-user.target

赋予docker.service 执行权限
chmod +x /etc/systemd/system/docker.service

重载配置文件以生效
systemctl daemon-reload

基础操作

启停服务

启动
sudo systemctl start docker

停止
sudo systemctl stop docker

查看服务状态
systemctl status docker

设为开机自启

sudo systemctl enable docker

允许普通用户执行docker命令

例如执行:docker info

(1) 把用户添加到docker用户组

创建docker组

groupadd docker

把普通用户添加到docker组

gpasswd -a 用户名 docker

#如需从组中删除,把-a换成-d

(2) 修改/var/run/docker.sock 文件的读写权限

修改文件权限 sudo chmod 666 /var/run/docker.sock

设置国内镜像加速器

这里选择阿里云,需登录

https://cr.console.aliyun.com/cn-beijing/instances/mirrors

复制镜像地址

把地址配置到/etc/docker/daemon.json

vi /etc/docker/daemon.json

{
    "registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com"],
    "log-driver":"json-file",
    "log-opts": {"max-size":"100m", "max-file":"10"}
}

"max-size":"100m", "max-file":"10":限制每个容器的日志大小为100M*10个文件。

重新加载配置、重启docker

systemctl daemon-reload

systemctl restart docker

执行docker info 查看地址

离线安装docker-compose

docker-compse官方下载地址:https://github.com/docker/compose/releases

#安装到指定位置

mv docker-compose-linux-x86_64 /usr/local/bin/

#修改文件名
 mv docker-compose-linux-x86_64 docker-compose

#授权
sudo chmod +x /usr/local/bin/docker-compose

#查看版本
docker-compose -v

常用docker命令

Docker 命令大全 | 菜鸟教程 https://www.runoob.com/docker/docker-command-manual.html

查看镜像列表

docker images

下载镜像

pull 镜像名称:镜像TAG

删除镜像

docker rmi 镜像名称:镜像TAG

镜像打包

docker save 镜像名称:镜像TAG >打包文件名.tar

镜像加载

docker load -i 打包文件名.tar

docker load<打包文件名.tar

后台创建容器

docker run -d --name 容器名 镜像名称:镜像TAG

启、停、重启、删容器

docker start/stop/restart/rm 容器名

查看最近10条日志并持续打印

docker logs -ft --tail 10 容器名

打开容器终端

docker exec -it 容器名 /bin/bash

更多参考资料:

Docker 教程 | 菜鸟教程 https://www.runoob.com/docker/docker-tutorial.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值