【Docker】docker安装记录
前言
当前应用中比较多的使用容器化管理,Docker是比较常用的容器化部署工具,此篇将罗列Docker的安装过程及相关的语句用法。文章仅用于个人学习记录,方便自己以后查阅学习,有问题欢迎指出。
一、装Linux虚拟环境
Docker是依赖于Linux环境,所以如果需要在Windows环境(环境以当前电脑Windows10家庭中文版为例)进行安装Docker需要准备以下步骤:
整个安装是参考了全网最全Win10/11系统下WSL2+Ubuntu20.04的全流程安装指南(两种支持安装至 D 盘方式)这一篇,如果是想安装并启用Hyper-V不装Ubuntu可以参考这篇文章。我查阅了很多的教程,如果只是用于安装Docker基本都是安装Hyper-V(比较快捷)而不是安装Ubuntu的,当前是学习需要。
Ubuntu步骤如下:
——使用PowerShell 命令行快速安装 WSL2
以管理员运行PowerShell并输入以下命令:
- 启用 Windows 子系统(WSL)功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
- 启用虚拟机平台功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- 将 WSL 默认版本设置为 WSL2
wsl --set-default-version 2
- 重启电脑
—— 安装Ubuntu-20.04并转去D盘
-
D盘创建 WSL 文件夹,并在该文件夹下创建 Ubuntu-20.04 文件夹。
-
打开PowerShell并查看可用的 WSL 发行版
wsl --list --online

- 安装Ubuntu-20.04
wsl --install -d Ubuntu-20.04
安装完毕后会要求你创建一个新用户,按照提示输入用户名和密码即可,然后按 Ctrl + C 退出即可。
—— 将Ubuntu-20.04装到其他盘(如果觉得默认装在C盘也OK那就已经安装完成了)
- 导出 Ubuntu-20.04 为 .tar 文件
wsl --export Ubuntu-20.04 D:\WSL\Ubuntu-20.04\Ubuntu-20.04.tar
- 取消注册原有的 Ubuntu-20.04
wsl --unregister Ubuntu-20.04
- 将 Ubuntu-20.04 重新导入到 D盘(D:\WSL\Ubuntu-20.04)
wsl --import Ubuntu-20.04 D:\WSL\Ubuntu-20.04 D:\WSL\Ubuntu-20.04\Ubuntu-20.04.tar --version 2
- 启动 Ubuntu-20.04
wsl -d Ubuntu-20.04
这波操作完成之后,会发现是以root用户默认进入,如需修改默认登陆用户,可进行下列操作
—— 修改Ubuntu默认登陆用户
- 创建新用户,在 WSL 终端(默认 root)下运行以下命令
adduser yourusername
然后按照提示输入用户名和密码。
- 赋予新用户 sudo 权限
usermod -aG sudo yourusername
- 修改默认登录用户为普通用户
以下命令使用管理员运行PowerShell执行
ubuntu2004 config --default-user yourusername
- 再次启动 WSL
wsl -d Ubuntu-20.04
启动后发现已修改成功。
——后记
我后来使用win11装了Ubuntu-22.04版本,发现报无法使用localhost代理,解决方法:
1.在C盘->用户->当前用户目录下创建.wslconfig文件
2.在文件中填入以下信息
[experimental]
autoMemoryReclaim=gradual
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true
3.重新进入Ubuntu-22.04
二、安装Docker Desktop
此处先拉出官网下载地址:https://docs.docker.com/desktop/setup/install/windows-install/
按照需要下载对应的安装版本,一路next安装即可安装完成。
安装完成之后,有个建议,把本地路径改到其他盘,如图。

到这里基本的安装就已经完成了,如果有人想把默认安装到C盘的Docker安装到其他盘,可继续往下看,但是有失败风险(我是失败了且各种骚操作试了好几次才成功运行)。
—— 将Docker迁移到D盘
-
停掉Docker服务
打开Services,查询Docker相关并点击停用
-
将C:\Program Files\Docker 全部拷贝到D盘 (D:\Program Files\Docker)
-
修改Docker服务路径
Win + R 并输入“regedit” 打开注册表,在“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services”中查找“com.docker.service”,
将ImagePath 修改为你的复制后路径。 -
修改环境变量
将环境变量中之前都已经配置好的Docker相关路径改成新的路径,重启电脑。
如果出现了迁移后启动不了的情况,可以继续以下操作,参考文章windows 10 docker 从C盘迁移到其他盘
我装完之后的实际环境与他写的有出入,我这里没有docker-desktop-data只有docker-desktop。我参考上面的命令进行发行版迁移之后,多次试错之后也是可以成功运行。大致命令如下:
再次提醒该转盘有失败风险,请谨慎选择操作- 停掉Docker服务
- 关闭所有发行版:
wsl --shutdown - 将docker-desktop导出到D:\wsl\docker-desktop\docker-desktop.tar
wsl --export docker-desktop-data D:\SoftwareData\wsl\docker-desktop-data\docker-desktop-data.tar - 注销docker-desktop
wsl --unregister docker-desktop - 重新导入docker-desktop
wsl --import docker-desktop D:\wsl\docker-desktop\ D:\wsl\docker-desktop\docker-desktop.tar --version 2
三、在Ubuntu中安装Docker
——记录如何在Ubuntu中安装Docker,参考以下链接Ubuntu 22.04下Docker安装(最全指引)
#安装前先卸载操作系统默认安装的docker,
sudo apt-get remove docker docker-engine docker.io containerd runc
#安装必要支持
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release
#添加 Docker 官方 GPG key (可能国内现在访问会存在问题)
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 阿里源(推荐使用阿里的gpg KEY)
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
#添加 apt 源:
#Docker官方源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
#阿里apt源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
#更新源
sudo apt update
sudo apt-get update
#安装最新版本的Docker
sudo apt install docker-ce docker-ce-cli containerd.io
#等待安装完成
#查看Docker版本
sudo docker version
#查看Docker运行状态
sudo systemctl status docker
#安装Docker 命令补全工具
sudo apt-get install bash-completion
sudo curl -L https://raw.githubusercontent.com/docker/docker-ce/master/components/cli/contrib/completion/bash/docker -o /etc/bash_completion.d/docker.sh
source /etc/bash_completion.d/docker.sh
# 若用户不是管理员角色但想使用该角色执行docker相关命令则进行一下操作
#添加默认用户组(默认已经创建,已创建则无需进行)
sudo groupadd docker
# 将当前用户添加到组中
sudo usermod -aG docker $USER
#权限生效
newgrp docker
# 更新~/.bashrc文件使得不需要在重新进入使再次执行newgrp docker 命令
vim ~/.bashrc
#在末尾添加语句
groupadd -f docker
# 保存并推出
#更新文件资源
source ~/.bashrc
—— 在安装完docker之后,通常是需要配置镜像源来帮助我们在国内访问
- 配置国内镜像源
sudo vim /etc/docker/daemon.json
在文件里配置源连接,建议自己去找最新的镜像源,之前有好一些都不能用了,内容demo如下:
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}
- docker命令走代理
sudo mkdir /etc/systemd/system/docker.service.d
cd /etc/systemd/system/docker.service.d
sudo vim proxy.conf
在文件中配置demo如下
[Service]
Environment="HTTP_PROXY=代理服务器ip:port"
Environment="HTTPS_PROXY=代理服务器ip:port"
保存并退出,然后执行以下命令
sudo systemctl daemon-reload #重启daemon进程
sudo systemctl restart docker #重启docker
可用docker info命令验证已配置内容。
总结
以上为Docker相关安装记录。

6万+

被折叠的 条评论
为什么被折叠?



