Linux安装配置 docker docker-compose

本文详细介绍了Docker的四种安装方法,包括使用仓库、包管理、便利脚本和二进制文件,并讲解了如何将Docker加入systemd管理,确保其开机启动。此外,还提供了更换国内镜像源的步骤,以加快Docker的下载速度。同时,解决了非root用户使用Docker的权限问题,确保所有用户都能顺利运行Docker命令。最后,介绍了如何安装docker-compose,使用户能够方便地管理多容器应用。
摘要由CSDN通过智能技术生成

一、安装docker

参考: docker官方文档 https://docs.docker.com/engine/install/

方式一 Install using the repository

能上外网的话,推荐此方法。
具体步骤请见官方文档链接

方式二 Install from a package

注意会出现依赖缺失的情况。
具体步骤请见官方文档链接

方式三 Install using the convenience script

具体步骤请见官方文档链接

方式四 Install from binaries

只能上内网,可用此方法

  1. 下载二进制包 docker-xx.xx.xx.tgz
    docker官方下载链接
    清华大学镜像源下载链接 国内推荐用此链接

  2. 解压二进制包

tar -zxvf /path/to/<FILE>.tgz

在这里插入图片描述

  1. 复制解压后的文件到PATH中包含的路径,即可全局使用docker相关命令
sudo cp docker/* /usr/bin/
  1. 启动docker daemon
sudo dockerd &
  1. 检查docker是否正常启动
docker --version


二、将docker加入systemd管理

  1. 在/usr/lib/systemd/system/创建docker.service文件
sudo vim /usr/lib/systemd/system/docker.service
  1. 输入以下内容
[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
ExecStart=/usr/bin/dockerd
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
  1. 设置开机启动
systemctl enable docker.service
  1. 刷新配置
systemctl daemon-reload
  1. 测试是否成功
查看开机自启状态:
systemctl list-unit-files |grep enabled |grep docker
systemctl is-enabled docker.service 


systemctl start docker.service     启动
systemctl status docker.service    查看状态
systemctl stop docker.service      停止
systemctl restart docker.service   重启
ps -ef |grep docker                查看docker进程


三、docker更换国内源

换中科大和网易镜像源,配置DNS

vim /etc/docker/daemon.json

更改为以下内容
{ 
 "registry-mirrors": [ "https://docker.mirrors.ustc.edu.cn", "http://hub-mirror.c.163.com" ],
 "dns": ["223.5.5.5", "223.6.6.6"]
 }

重启docker服务
systemctl restart docker


四、非root用户使用docker命令

解决非root用户使用docker命令提示权限受限

  1. 创建docker用户组
sudo groupadd docker
  1. 将当前用户加入docker组
sudo gpasswd -a ${USER} docker
  1. 更新组信息
newgrp docker
  1. 重启docker
sudo systemctl restart docker
  1. 测试执行结果
docker ps


五、安装docker-compose

参考: docker官方文档 https://docs.docker.com/compose/install/

  1. 下载docker-compose,若不能连外网,则可下载后通过ftp传到服务器 ,修改文件名称与存放路径
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  1. 添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
  1. 配置全局使用docker-compose命令
方法一 将/usr/local/bin添加至PATH
export PATH=$PATH:/usr/local/bin

方法二 创建软链接至PATH中包含的路径,如/usr/bin
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

ps: 查看PATH

echo $PAHT

在这里插入图片描述

  1. 测试docker-compose
docker-compose --version
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值