如何制作ubuntu系统docker镜像?
安装debootstrap:sudo apt install debootstrap通过debootstrap构建ubuntu16.04 LTS的rootfs创建rootfs存放的位置,如我们把新的rootfs存在/opt/new_os:sudo mkdir -p /opt/new_os构建基础ubuntu16.04 LTS的rootfs:sudo debootstrap --verbose --
·
- 安装debootstrap:sudo apt install debootstrap
- 通过debootstrap构建ubuntu16.04 LTS的rootfs
- 创建rootfs存放的位置,如我们把新的rootfs存在/opt/new_os:sudo mkdir -p /opt/new_os
- 构建基础ubuntu16.04 LTS的rootfs:sudo debootstrap --verbose --arch=amd64 xenial /opt/new_os http://mirrors.aliyun.com/ubuntu
- 配置基础系统参数
- 切换到新rootfs:sudo chroot /opt/new_os /bin/bash
- 安装基础包:
- apt -y update
- apt -y upgrade
- apt -y install vim
- ……
- 配置系统字符集(根据提示进行):dpkg-reconfigure locales
- 配置时区: cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
- 可选:配置第三方衍生系统版本信息(UbuntuEureca)
- tee /etc/ubuntueureca-release << -'EOF'
- DISTRIB_ID=Ubuntu Eureca
- DISTRIB_RELEASE=16.04
- DISTRIB_CODENAME=xenial
- DISTRIB_DESCRIPTION="Ubuntu Eureca 16.04"
- EOF
- 清理系统: rm -Rf /tmp/* && apt clean
- 退出当前rootfs:exit
- 打包并创建docker镜像(前置条件:当前系统已经安装Docker):sudo tar -C /opt/new_os -c . | sudo docker import - new_os
- 测试: sudo docker run new_os cat /etc/lsb_release
- 发布到仓库(以官方仓库为例,私有仓库自行上传)
- sudo docker login (默认是docker hub账户)
- sudo docker tag new_os eureca2020/new_os
- sudo docker push eureca2020/new_os
- (可选)打包为容器基础镜像(主要是rootfs处理)
- 方法一:tar --numeric-owner --exclude=/proc --exclude=/sys -cvf new_os.tar / cat new_os.tar | docker import - new_os
- 方法二:sudo tar --numeric-owner --exclude=/proc --exclude=/sys -C / -c . | sudo docker import - new_os
更多推荐
所有评论(0)