Docker安装使用
Ubuntu16.04安装:
https://blog.csdn.net/jinking01/article/details/82490688
https://www.cnblogs.com/loveyoul9/p/11438627.html
一:Docker安装错误卸载
sudo apt-get remove -y docker-*
docker --version 查看docker版本来验证是否已经删除docker
二:解决源无法更新问题
E: 仓库 “http://ppa.launchpad.net/hzwhuang/ss-qt5/ubuntu bionic Release” 没有 Release 文件。 N: 无法安全地用该源进行更新,所以默认禁用该源。 N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。
由于18.04没有这个软件,所以我们改为16进行安装
在你的/etc/apt/sources.list.d目录下,看 这个文件(hzwhuang-ubuntu-ss-qt5-bionic.list )将里面的bionic 改成xenial ,保存再运行 sudo apt-get update ,最后再运行一次 sudo apt-get install s hadowsocks-qt5 就好了。
因为在ppa:hzwhuang/ss-qt5 并没有18.04版本的源,所以再执行update时会出现这个错误。
三:开始安装Docker
(一)安装Docker
添加用户后,需要重启计算机
(二)配置镜像加速器
四:安装Docker镜像
(一)查看当前已经安装的镜像
docker images 查看当前所有镜像
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,如ubuntu仓库源里,有15.10、14.04等多个不同的版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
(二)获取一个新的镜像
1.当我们在本地主机上使用一个不存在的镜像时 Docker 就会自动下载这个镜像 例如:docker run ubuntu:16.04 /bin/echo "Hello world" 2.预先下载这个镜像,我们可以使用 docker pull 命令来下载它。 例如:docker pull ubuntu:16.04
(三)删除一个镜像
1.获取镜像ID--IMAGE ID
2.docker rmi 镜像ID 或者 使用 docker rmi 仓库名:标签 可以唯一表示一个镜像
(四)设置镜像标签
docker tag 镜像ID 仓库名:标签名
docker tag cf0f3ca922e0 test1/ubuntu:dev
五: Docker容器使用
(一)查看当前正在运行的容器
使用 docker ps 来查看我们正在运行的容器
(二)容器连接
docker run -it ubuntu:16.04 //i是说启动交互式,t是分配一个tty
六:解决纯净版Ubuntu镜像带来的问题
(一)出现没有如何命令,例如vi、ifconfig....
使用 apt-get update 更新软件源中的所有软件列表
(二)出现使用apt-get update更新时,网速极慢:推文《重点》
摘录:我们原来宿主机的ubuntu发行版,和容器中base_image的发行版是很有可能存在区别的。
本地的ubuntu发行版的软件源一般会是国内地址(比如说163源,中科大源等),而官方镜像中的源一般都是archive.ubuntu.com国外的源。
两者存在区别。
可以用 cat /etc/apt/source.list 分别查看主机和镜像的源
由于国内网络的原因,连接archive.ubuntu.com很有可能非常慢。因此容器内的baseimage中使用国外源的话,在容器在国内运行,apt-get update会非常慢。
(三)解决(二)中问题:更新镜像容器中的源
1.备份原来的源文件
cp /etc/apt/sources.list /etc/apt/sources.list.bak
2 .更新新的源路径
echo "# deb cdrom:[Ubuntu 16.04.3 LTS _Xenial Xerus_ - Release amd64 (20170801)]/ xenial main restricted" > /etc/apt/sources.list echo "deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse" > /etc/apt/sources.list echo "deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse" > /etc/apt/sources.list echo "deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse" > /etc/apt/sources.list echo "deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse" > /etc/apt/sources.list echo "deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse" > /etc/apt/sources.list echo "deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse" > /etc/apt/sources.list echo "deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse" > /etc/apt/sources.list echo "deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse" > /etc/apt/sources.list echo "deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse" > /etc/apt/sources.list echo "deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse" > /etc/apt/sources.list
3.我使用这种方法后速度有很大提升,若是不行。可以参考上面推文
(四)安装软件时,自带的install.sh文件使用到sudo命令,而纯净版没有
使用sudo ,提示如下
bash: sudo: command not found
因为我们当前用户是root的原因吗??
解决方法:使用 apt-get install sudo
七:Docker中使用Ubuntu16.04测试
一:安装git
apt-get install git
二:安装Python
apt-get install python
三:安装pip
apt-get install python-pip
四:测试安装Mininet
八:Docker镜像保存
(一)推文
https://www.bbsmax.com/A/Vx5Mr0eadN/
https://www.jianshu.com/p/608998d7ec9f
(二)镜像保存
1.退出镜像
cd ~ //回到用户目录 exit //退出镜像
2.保存镜像
root@66f8badd247a:/opt/mininet/util# exit
docker commit 66f8badd247a ubuntu16-mininet
3.查看镜像