从零制作一个ubuntu的docker镜像

上次分享了一下怎么制作centos的镜像,今天给大家分享一下ubuntu的制作方法。

准备ubuntu环境

如果你有Ubuntu环境的话最好,可以直接打包,我用的是CentOS系统,所以需要借助debootstrap工具。

bash 复制代码
yum -y install epel-release
yum -y install debootstrap

mkdir ~/ubuntu-root
debootstrap --arch=amd64 focal ~/ubuntu-root http://archive.ubuntu.com/ubuntu/

[root@bogon ]# ls ~/ubuntu-root/
bin   dev  home  lib32  libx32  mnt  proc  run   srv  tmp  var
boot  etc  lib   lib64  media   opt  root  sbin  sys  usr

制作ubuntu镜像

bash 复制代码
mkdir ubuntu
cd ubuntu
mv ~/ubuntu-root .

cat > Dockerfile << EOF
FROM scratch
ADD ubuntu-root/ /
CMD ["/bin/bash"]
EOF

docker build -t ubuntu .

[root@bogon ubuntu]# docker build -t ubuntu .
[+] Building 0.3s (5/5) FINISHED                                     docker:default
 => [internal] load build definition from Dockerfile                           0.0s
 => => transferring dockerfile: 87B                                            0.0s
 => [internal] load .dockerignore                                              0.0s
 => => transferring context: 2B                                                0.0s
 => [internal] load build context                                              0.3s
 => => transferring context: 1.08MB                                            0.3s
 => CACHED [1/1] ADD ubuntu-root/ /                                            0.0s
 => exporting to image                                                         0.0s
 => => exporting layers                                                        0.0s
 => => writing image sha256:80026197be11ccce07f1be9707d39540bc4fda056b6119d6d  0.0s
 => => naming to docker.io/library/ubuntu                                      0.0s

测试

bash 复制代码
[root@bogon ~]# docker run -it --rm ubuntu bash
root@25befe3b3054:/# 
相关推荐
爱学习 爱分享4 分钟前
k8s 开启防火墙,容器内部无法访问外部 ip
tcp/ip·容器·kubernetes
养肥胖虎26 分钟前
Docker学习笔记:后端、数据库和反向代理怎么一起跑起来
后端·nginx·docker·postgresql·go·部署
叶帆1 小时前
【YFIOs】Docker方式部署
运维·docker·容器
小猿姐2 小时前
Clickhouse Kubernetes Operator 实测:哪种方案更适合生产?
运维·数据库·kubernetes
岳来2 小时前
Docker 的 --privileged 特权模式学习
docker·容器·--privileged
彩色的黑'''2 小时前
[root@localhost ~]#,Linux系统的命令提示符为啥现在变成-bash-4.2#了,哪里设置的
linux·运维·bash
树下水月2 小时前
文件分片上传接口(Easyswoole)被nginx拦截,并返回状态码400和408的抓包排查过程
运维·nginx
源远流长jerry3 小时前
Linux 网络发送机制深度解析:从应用到网线
linux·服务器·网络·网络协议·tcp/ip
南境十里·墨染春水3 小时前
linux学习进展 shell编程
linux·运维·学习
goyeer3 小时前
【ITIL4】32服务实践 - 问题管理(Problem Management)
linux·运维·服务器·企业数字化·it管理·itil·it治理