docker桌面版创建Ubuntu容器及镜像配置

本文档详细介绍了如何在Windows上通过Docker桌面版创建Ubuntu容器,配置国内阿里源,并从容器生成镜像。首先,下载并安装Docker。然后,拉取Ubuntu镜像并创建容器,通过命令行操作配置Ubuntu的阿里云镜像源。最后,通过`docker commit`命令创建新的镜像,以便后续快速部署预配置的容器。
摘要由CSDN通过智能技术生成

一、安装docker桌面版

目前遇到在github clone的一个项目需要在Linux环境下运行,但只有一个Windows主机,双系统太麻烦,虚拟机太慢,所以用现在流行的容器创建一个Linux环境,用的是docker小鲸鱼桌面版。
安装的话网上有很多教程,随便找个看就行,一路下一步而已,附上一个教程。
菜鸟安装教程

二、用docker创建Linux容器

1. pull一个Ubuntu镜像

docker有三个重要概念:仓库(repository)、镜像(image)、容器(container)。
dockerhub像github一样存放着很多远程的Repository(仓库)。每个仓库里面会存放很多可用的image(镜像),所以仓库中会有ubuntu、mysql等等常见系统或应用的镜像,但比虚拟机的更轻量即镜像文件体积更小。可以用镜像创建无数的容器(container),把image比作一个类,container就是类创建出来的对象,所以每一个container创建出来都是一样的。

在powershell里用docker pull Ubuntu

docker pull ubuntu

这是一个极度精简的系统,连最基本的wget命令都没有;所以先要apt-get update升级系统和安装apt-get install wget命令;

2.用镜像创建容器

docker run -it --name=testUbuntu ubuntu  创建一个名字为testUbuntu的容器
options:
	--name="name"    为容器指定新name
	-d   后台运行容器,并返回容器ID,也即启动守护式容器
	-i   以交互模式运行容器,通常与-t同时使用
	-t   为容器重新分配一个伪输入终端,通常与-i同时使用
	-P   注意是大写,随机端口映射
	-p   小写,指定端口映射,有以下四种格式
		ip:hostPort:containerPort
		ip::containerPort
		hostPort:containerPort
		containerPort

三、配置镜像

Ubuntu 官方软件源中包含了 Ubuntu 系统中所用到的绝大部分的软件,它对应的源列表文件是 /etc/apt/sources.list。该文件记录Ubuntu 官方源的地址,但国内访问官方软件源速度会慢,为解决这样的问题,国内许多学校以及公司的镜像网站都对官方软件源进行镜像备份,并且定期同步更新,为了提高访问速度,可以选择去访问这些镜像网站,所以我们需要将 Ubuntu 官方软件源的网址替换成国内的 Ubuntu 软件源镜像网站的网址就可以。

因为这个镜像太简单了,连vi和gedit都没有,所以只能用cat来写入。

  • 查看ubuntu版本

首先需要查看自己pull的ubuntu是什么版本,一般来说默认是最新的,不同版本用的镜像是不一样的。

cat /etc/issue  
  • 配置阿里源的镜像

1、删除国外源文件

rm /etc/apt/sources.list  

2、创建sources文件,当输入EOF时结束输入

cat>/etc/apt/sources.list<<EOF  

3、执行了上面的语句后,复制下面的阿里云的源信息,以EOF这三个字符作为最后一行。我的版本是最新的Ubuntu 20.04,所以下面的阿里源信息是20.04的。

#阿里源
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

4、查看输入信息是否正确
这个命令可以展示sources.list的信息,和第2步的相比就少了一个’>‘,’>'这表示的是创建并写入

cat /etc/apt/sources.list

5、 更新apt-get

apt-get update

这样子我们就配置完了一个很简单的容器。

四、从容器生成镜像

由于我们从dockerhub中pull的Ubuntu镜像是一个最小版本,连vi也没有:( 每次创建容器时都需要更换国内源和安装gcc等工具。因此,我认为要做一个将上述完成的容器生成镜像,以后从这个镜像生成的容器就不需要配置了,减少了后续的dirty work

docker commit -a "Niz" testUbuntu myubuntu:v1.0  我的生成命令
docker commit -a "Niz" <容器名/容器id> 镜像名字:tag
options:
	-a   提交的镜像作者
	-m   提交时的说明文字
	-c   使用Dockerfile指令来创建镜像
	-P   在commit时,将容器暂停

查看是否成功生成镜像

docker images
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值