Docker 容器中安装 Docker

本文讲的是在Docker中安装Ubuntu容器,然后在这个Ubuntu容器中再安装Docker。或许这样可以省下买服务器的钱,当然这只是为了学习测试使用,真正项目上还是需要买服务器的。

系统环境

Linux: WSL2 Ubuntu 20.04
Docker: 20.10.8

执行步骤

1. 拉取镜像、启动容器、复制文件到容器内

# 1. 下载官方ubuntu
docker pull ubuntu:20.04
# 2. 运行容器 ub1
docker run -it --name ub1 ubuntu:20.04
    # 按下 Ctrl + P + Q 让容器后台运行

# 3. 将家目录下的必要文件复制到容器中
docker cp .bash_logout ub1:/root
docker cp .bashrc ub1:/root
docker cp .profile ub1:/root

2. 安装必备软件、配置容器

# 4. 进入容器
docker attach ub1
# 5. 更新软件源并安装必备软件
apt update & apt install -y vim curl net-tools iproute2 iputils-ping
# 6. 进入家目录
cd ~
# 7. 修改复制进来的文件的所有者
chown root.root .bash* .profile
# 8. 设置用户名高亮:进入 .bashrc,追加下面内容
vim ~/.bashrc

# ================ 追加的内容 start ===============
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;34;40m\]\u\[\033[00;00;40m\]@\[\033[01;33;40m\]\h\[\033[00;31;40m\]:\[\033[00;00;40m\]\w \[\033[01;32;40m\]\$ \[\033[01;36;40m\]'
# ================ 追加的内容 end   ===============
# 8. 更新配置信息
source ~/.bashrc

3. 安装Docker

# 9. 安装Docker
# 9.1 移除旧版本
apt-get remove docker docker-engine docker.io containerd runc
# 9.2 安装工具包
apt update & apt-get install -y ca-certificates curl gnupg lsb-release
# 9.3 添加 GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 9.4 设置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" | tee /etc/apt/sources.list.d/docker.list > /dev/null
# 9.5 安装 Docker Engine
apt update & apt-get install -y docker-ce docker-ce-cli containerd.io
# 9.6 安装后需要选时区

# 10. 查看Docker
    # 发现只有 Docker Engine
docker version

4. 打包镜像、启动容器

# 11. 先保存当前镜像
docker commit -a "bpf" -m "add docker and tools" ub1 dockerubuntu
# 12. 运行新的容器
docker run -it --name ub2 --hostname docker1 \
-v /var/run/docker.sock:/var/run/docker.sock \
--network mynet dockerubuntu

:如果是安装其他Linux发行版也是类似的步骤,需要把最初的Ubuntu:20.04换成对应的镜像,和在官方文档中查找对应版本的下载Docker的步骤。

参考资料

posted @ 2021-10-31 14:04  步平凡  阅读(8640)  评论(4编辑  收藏  举报