安装
群晖
通过套件中心搜索安装即可
通用脚本安装
- 切换到root用户,拉去脚本安装
sudo -i #使用root用户登录,按提示输入密码,密码默认不显示,输入完直接回车即可 curl -fsSL get.docker.com -o get-docker.sh #脚本拉取
- 执行脚本
sh get-docker.sh --mirror Aliyun \\使用阿里云加速
- 安装docker-compose
curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
如果速度感人,可以用以下命令
curl -L https://get.daocloud.io/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
提升权限
sudo chmod +x /usr/local/bin/docker-compose
测试是否成功
docker-compose --version
centos系统安装docker
- 如果有安装过以下版本,必须执行以下代码先行删除旧版本
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
- 安装软件包(提供实用程序)
yum install -y yum-utils
- 设置存储库
yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
- 安装
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
如果系统提示接受 GPG 密钥,请验证指纹是否匹配,如果是,请接受它。060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
Ubuntu安装docker
- 卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
- 更新软件包索引并安装软件包以允许使用 基于 HTTPS 的存储库
apt-get update apt-get install \ ca-certificates \ curl \ gnupg \ lsb-release
- 添加 Docker 的官方 GPG 密钥
mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
- 设置存储库
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- 更新包
apt-get update
运行时收到 GPG 错误?apt-get update
默认掩码可能配置不正确,导致无法检测到 存储库公钥文件。尝试授予 Docker 的读取权限 更新包索引之前的公钥文件sudo chmod a+r /etc/apt/keyrings/docker.gpg sudo apt-get update
- 安装 Docker Engine、containerd 和 Docker Compose
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
docker相关命令
#添加开机自启动
systemctl enable docker
#启动docker服务
systemctl start docker
#进入指定容器
docker exec -it 容器id /bin/bash
#启动指定容器
docker start 容器id
#重启指定容器
docker restart 容器id
#停止指定容器
docker stop 容器id
#强制停止指定容器
docker kill 容器id
#删除指定容器
docker rm 容器id
#复制文件
docker cp 容器名:要复制的文件的容器内路径 要复制到的宿主机路径
#查看磁盘占用情况
docker system df
#删除已停止的容器,因为rm命令无法删除运行在的容器;-q表示只显示ID
docker rm $(docker ps -a -q)
#删除悬空镜像,-f表示条件筛选,"dangling=true"表示悬空镜像
docker rmi $(docker images -f "dangling=true" -q)
神器:docker system prune
-
该指令默认会清除所有如下资源:
- 已停止的容器(container)
- 未被任何容器所使用的卷(volume)
- 未被任何容器所关联的网络(network)
- 所有悬空镜像(image)
- 清除构建镜像时的缓存(这个可是占用相当大)
-
该指令默认只会清除悬空镜像,未被使用的镜像不会被删除,添加参数
-a
后可一并删除 -
可以添加
-f
参数用以忽略相关告警确认信息。
我使用的docker容器
-
docker run -d -v $(pwd)/bilibilirecorder:/rec -p 2356:2356 bililive/recorder
-
可录制多个平台直播
docker run --name="bililive-go" --restart=always -v /nxsg/bililive-go/video:/srv/bililive -p 8080:8080 -d chigusa/bililive-go
-
开源影音媒体服务器
docker run -d \ --name Jellyfin --restart=always -v $(pwd)/cache : /cache \ -v $(pwd)/config : /config \ -v $(pwd)/media : /media \ -p 8096 : 8096 Jellyfin/Jellyfin:latest
-
docker run -dit \ -v $PWD/ql:/ql/data \ -p 5700:5700 \ --name qinglong \ --hostname qinglong \ --restart unless-stopped \ whyour/qinglong:latest
-
docker run -d --restart=always -v /etc/alist:/opt/alist/data -p 5244:5244 --name="alist" xhofe/alist:latest
创建容器后修改配置
- 关闭docker,这是前提
systemctl stop docker #centos系统用这个
- 找到docker存放文件的目录
docker info | grep 'Root'
- 查找需要修改的容器的ID
docker ps -a
- 使用
cd
命令,进入容器目录;使用ll
命令或者ls -l
命令列出所有文件 - 使用vim等编辑器修改
config.v2.json
文件和hostconfig.json
文件 - 修改完成后保存,再启动docker即可
Comments NOTHING