ubuntu20.04 Docker部署已有项目

常用命令

docker ps # 查看运行的容器
docker ps -a # 查看所有的容器
docker stop 容器ID # 停止运行的容器
docker rm 容器ID # 删除运行的容器

docker images # 查看镜像
docker rmi 镜像ID # 删除镜像

容器打包成镜像:docker commit 容器ID 镜像名:版本

docker run
--name 容器名
-d # 后台运行
-p 本机端口:容器端口 # 指定端口映射
-v 本地文件夹:容器挂载位置 # 挂载
-e PIP_INDEX_URL="https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple" # 设置环境变量

docker logs 容器ID # 查看日志
docker exec -it 容器ID bash # 进入容器
exit # 退出容器
docker restart 容器ID # 重启容器

docker 安装

(1)宝塔
软件商店搜索docker,直接安装,再安装Docker Compose管理工具

(2)win Docker Desktop 
链接:https://www.docker.com/
启用相关功能:控制面板--启用或关闭Windows功能
启用:1.Hyper-V 2.适用于 Linux 的 Windows 子系统 3.虚拟机平台
管理员权限执行:dism.exe /Online /Enable-Feature /FeatureName:VirtualMachinePlatform /All
重启,重启后进入BIOS,启用“处理器虚拟化技术”。
查看已经安装的子系统:wsl --list --verbose
提示:Error code: Wsl/WSL_E_DEFAULT_DISTRO_NOT_FOUND
列出可安装的系统版本(需要魔法):wsl.exe --list --online
安装WSL(需要魔法):wsl.exe --install Ubuntu-22.04

(3)镜像
阿里云镜像加速:进入阿里云,控制台,搜索产品与服务,输入容器镜像服务,镜像工具。进入宝塔镜像管理中有一个镜像加速直接点击,输入阿里云地址

GPU项目需要安装nvidia-docker

1、添加nvidia-docker的源:
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update
2、安装nvidia-container-toolkit
sudo apt-get install -y nvidia-container-toolkit
3、重启docker
sudo systemctl restart docker

克隆docker容器 和 使用容器的基本操作:(以https://replicate.com/tencentarc/gfpgan为例)

docker run -d -p 5000:5000 --gpus=all r8.im/tencentarc/gfpgan@sha256:4338c83a11d20ddb52ccf362b932dec80abd004120a46667181a19dfa1fc581b

查看容器log日志(程序报错等信息):docker logs --tail=1000 容器名称 
可以从宝塔直接查看运行的容器,也可以用命令:sudo docker ps -a #有-a是已运行容器,去掉就是所有的
# 拷贝文件/文件夹
docker cp 容器ID:目标文件路径 本地文件路径
docker cp 本地文件路径 容器ID:容器内文件夹
进入容器:docker exec -it 容器名 /bin/bash 

修改存储路径

1. 停止 Docker 服务:
sudo systemctl stop docker.socket
sudo systemctl stop docker
2. 创建新的存储目录:
sudo mkdir -p /data/docker
3. 修改 Docker 配置文件:
sudo vi /etc/docker/daemon.json
添加以下内容:
{
  "data-root": "/data/docker"
}
4. 移动现有的 Docker 数据:
sudo rsync -aP /var/lib/docker/ /data/docker
5. 重新启动 Docker 服务:
sudo systemctl start docker.socket
sudo systemctl start docker
6. 验证修改:
docker info | grep 'Docker Root Dir'
<think>好的,我现在需要帮助用户在Ubuntu 20.04上离线安装和配置Docker。首先,我要回想一下自己之前了解的相关知识,同时结合用户提供的引用内容来整理步骤。 用户提到了三个引用,都是关于Ubuntu20.04离线安装Docker和相关组件的。首先,我需要确认这些引用的内容是否准确,并且是否有遗漏的步骤。比如,引用[2]中提到了安装docker-ce-cli依赖的问题,这可能是关键点。用户可能遇到的常见问题就是依赖缺失,所以需要提前下载所有依赖包。 接下来,我需要规划安装步骤。通常离线安装需要先下载所有必要的deb包,包括Docker引擎、CLI、Containerd等。然后通过dpkg逐个安装,或者使用apt的本地仓库方法。但根据引用中的例子,用户是直接使用dpkg -i安装各个deb包,所以可能需要手动处理依赖顺序。 另外,Docker Compose的安装部分,引用[3]提到从GitHub下载二进制文件并移动到/usr/bin/目录,赋予执行权限。这部分步骤应该没有问题,但需要注意版本兼容性。 然后,用户可能还需要配置Docker服务,比如设置开机启动,以及验证安装是否成功。这些步骤在引用中没有详细说明,但根据常规操作,应该包括systemctl enable dockerdocker run hello-world这样的命令。 需要注意的是,离线环境下无法自动解决依赖,所以必须确保所有依赖包都已下载。例如,docker-ce可能依赖containerd.io、docker-ce-cli等,这些都需要提前准备好。如果用户漏掉了某些包,安装时会失败,这时候就需要按照错误提示,逐个安装缺失的依赖。 最后,用户可能需要配置用户组,使得非root用户也能运行Docker命令,这通常是通过将用户加入docker组来实现的。这也是一个常见的配置步骤,应该在指南中提到。 总结一下,步骤应该是:准备依赖包→安装Docker组件→安装Docker Compose→配置服务→验证安装。同时,需要提醒用户注意依赖顺序和可能的错误处理。</think>### Ubuntu 20.04 离线安装 Docker 的详细步骤 #### 1. **准备离线安装包** 从联网设备下载以下组件到本地目录(如 `~/docker-offline`): - **Docker 引擎**(`docker-ce`、`docker-ce-cli`、`containerd.io`) - **Docker Compose**(二进制文件) - **依赖包**(如 `libseccomp2`、`iptables` 等,根据系统提示补充) **示例操作**: ```bash # 在联网设备上下载 Docker 相关包 wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce_20.10.12~3-0~ubuntu-focal_amd64.deb wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce-cli_20.10.12~3-0~ubuntu-focal_amd64.deb wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/containerd.io_1.6.28-1_amd64.deb ``` #### 2. **安装 Docker 核心组件** 将下载的 `.deb` 文件复制到目标机器,按顺序安装以避免依赖问题: ```bash sudo dpkg -i containerd.io_1.6.28-1_amd64.deb sudo dpkg -i docker-ce-cli_20.10.12~3-0~ubuntu-focal_amd64.deb sudo dpkg -i docker-ce_20.10.12~3-0~ubuntu-focal_amd64.deb ``` 若提示缺少依赖,需手动下载对应的 `.deb` 包并安装[^2]。 #### 3. **安装 Docker Compose** 从 [GitHub Releases](https://github.com/docker/compose/releases/tag/v2.29.3) 下载二进制文件,例如: ```bash # 复制文件到系统路径并赋予权限 sudo mv docker-compose-linux-x86_64 /usr/bin/docker-compose sudo chmod +x /usr/bin/docker-compose ``` 验证安装:`docker-compose --version`[^3]。 #### 4. **配置 Docker 服务** ```bash # 启动 Docker 服务并设为开机自启 sudo systemctl start docker sudo systemctl enable docker # 将当前用户加入 docker 组(避免每次使用 sudo) sudo usermod -aG docker $USER newgrp docker # 刷新用户组 ``` #### 5. **验证安装** ```bash # 运行测试容器 docker run hello-world ``` 若输出 `Hello from Docker!` 则安装成功。 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值