简单介绍
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
实际操作
此安装流程基于Ubuntu 18.04版本系统。
1、保证内核不低于Linux 3.10,使用uname -a或者uname -r查看
4.15.0-22-generic
2、更改防火墙配置
更改UFW转发策略
sudo vim /etc/default/ufw
将
DEFAULT_FORWARD_POLICY="DROP"
改为:
DEFAULT_FORWARD_POLICY="ACCEPT"
具体原因查看:Docker導致UFW設定失效
设置完成后重启系统即可。
3、检查是否已安装curl:
whereis curl
如果没有,则安装:
sudo apt-get -y install curl
4、 安装SSH(方便用SecureCRT控制虚拟机中的系统)
sudo apt-get install openssh-server openssh-client
5、添加docker的ATP仓库
报错指令:
sudo sh -c "echo deb https://apt.dockerproject.org/repo ubuntu-bionic main > /etc/apt/sources.list.d/docker.list"
报错内容:
403 Forbidden [IP: 52.85.151.70 443]
此处有坑,我Ubuntu是最新的18.04版本,别名是“Bionic Beaver(仿生海狸)”,所以在这里卡住了。刚开始,我使用的是我系统别名,但是一直无法进行更新,无法连接。然后发现,这个地址所包含的没有这个版本的,我修改了别名,使用了16.04的别名“Xenial”就可以了。
成功指令:
sudo sh -c "echo deb https://apt.dockerproject.org/repo ubuntu-xenial main > /etc/apt/sources.list.d/docker.list"
6、添加docker仓库的GPG秘钥
无法连接:
curl -s https://get.docker.io/gpg | sudo apt-key add -
报错内容:
gpg: no valid OpenPGP data found.
此处也有坑,地址无法连接,所以需要使用另外一个指令
成功指令:
gpg --keyserver pgpkeys.mit.edu --recv-key 9AA38DCD55BE302B
7、更新APT源
sudo apt-get update
7、安装docker
sudo apt-get install docker-engine
8、查看信息
sudo docker info
信息内容:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 17.05.0-ce
.....
9、验证Docker是否安装成功
sudo docker run hello-world
这个命令会下载一个测试镜像系统并在一个容器中运行,最终如果出现以下结果表示安装成功。
10、常用命令
查看docker信息:docker info
查看当前正在运行的容器:docker ps
查看所有容器: docker ps -a
创建镜像:
先进入要打包到镜像中的目录
docker build -tdocker-img-name. //docker-img-name是你要创建的镜像的名称 后面有一个点号,表示打包当前文件夹下的所有文件
启动容器
docker run -d -p 80:80 -p 3306:3306docker-img-name//-p为指定暴露的端口
删除镜像
docker rmi -f <容器id>
参考:
《第一本Docker书》