docker及docker-compose
docker及docker-compose的安装与使用
ubuntu下docker的安装
安装docker所需要的docker源和依赖等
sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
安装最新版
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io -y
安装指定版本
sudo apt update
apt list -a docker-ce
安装nvidia runtime/可选
curl -s -L https://nvidia.github.io/nvidia-container-runtime/gpgkey | sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-container-runtime.list | sudo tee /etc/apt/sources.list.d/nvidia-container-runtime.list
sudo apt-get update
sudo apt-get install nvidia-container-runtime
配置docker
vim /etc/docker/daemon.json
{
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
},
"registry-mirrors": [
"https://yp5fg15q.mirror.aliyuncs.com",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.1panel.live/",
"https://registry.docker-cn.com",
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://ccr.ccs.tencentyun.com"
],
"data-root": "/var/lib/docker"
}
systemctl daemon-reload
systemctl restart docker
验证nvidia-smi runtime是否安装成功
docker pull ubuntu
docker run -it --rm --gpus all ubuntu nvidia-smi
若不安装nvidia runtime则保持默认或者配置镜像源和data-root即可
ps:若需要将docker内的文件映射到宿主机上,可以将data-root设置为存储空间较大的盘
centos下docker的安装
添加指定的docker源
yum install yum-utils -y
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装最新版本
yum install docker-ce -y
安装指定版本
yum list docker-ce --showduplicates | tail -n 10
sudo yum install docker-ce-24.0.5-1.el7
docker-compose部署与使用
部署:不建议使用二进制包部署,可能会因二进制包下载不全导致报错
在github上下载对应的linux发行版【docker-compose-linux-x86_64】
https://github.com/docker/compose/releases/tag/v2.18.1
非root用户
mv docker-compose-linux-x86_64 docker-compose
mkdir ~/docker && mv docker-compose ~/docker
cd ~/docker
chmod +x docker-compose
查看docker-compose版本
~/docker/docker-compose --version
部署
~/docker/docker-compose up -d
root用户
将下载的文件移动到/usr/local/bin目录下进行重命名并添加可执行权限以及创建软链接
sudo mv docker-compose-linux-x86_64 /usr/local/bin
sudo mv docker-compose-linux-x86_64 docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
查看docker-compose版本
docker-compose --version
编写docker-compose文件或者下载所部署应用的docker-compose文件
docker-compose.yml格式——以alist网盘的docker-compose.yml配置文件为例
version: '3.3'
services:
alist:
restart: always
volumes:
- '/etc/alist:/opt/alist/data'
ports:
- '5244:5244'
environment:
- PUID=0
- PGID=0
- UMASK=022
container_name: alist
image: 'xhofe/alist:latest'
部署
docker-compose -f /path/file.yml up -d
若所部署的docker-compose文件名为:docker-compose.yml则只需在文件同目录下执行
docker-compose up -d
报错:
执行docker-compose up -d时出现ERROR: Failed to Setup IP tables: Unable to enable SKIP DNAT rule
解决方案:重启docker
service docker restart
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
IKKO!
喜欢就支持一下吧