Docker之环境
简单介绍
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
实际操作
此安装流程基于Ubuntu 18.04版本系统。
1、保证内核不低于Linux 3.10,使用uname -a或者uname -r查看
4.15.0-22-generic2、更改防火墙配置
更改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 curl4、 安装SSH(方便用SecureCRT控制虚拟机中的系统)
sudo apt-get install openssh-server openssh-client5、添加docker的ATP仓库
报错指令:
sudo sh -c "echo deb https://apt.dockerproject.org/repo ubuntu-bionic main > /etc/apt/sources.list.d/docker.list"
报错内容:此处有坑,我Ubuntu是最新的18.04版本,别名是“Bionic Beaver(仿生海狸)”,所以在这里卡住了。刚开始,我使用的是我系统别名,但是一直无法进行更新,无法连接。然后发现,这个地址所包含的没有这个版本的,我修改了别名,使用了16.04的别名“Xenial”就可以了。
403 Forbidden [IP: 52.85.151.70 443]
成功指令:6、添加docker仓库的GPG秘钥
sudo sh -c "echo deb https://apt.dockerproject.org/repo ubuntu-xenial main > /etc/apt/sources.list.d/docker.list"
无法连接:
curl -s https://get.docker.io/gpg | sudo apt-key add -
报错内容:此处也有坑,地址无法连接,所以需要使用另外一个指令
gpg: no valid OpenPGP data found.
成功指令:7、更新APT源
gpg --keyserver pgpkeys.mit.edu --recv-key 9AA38DCD55BE302B
sudo apt-get update7、安装docker
sudo apt-get install docker-engine8、查看信息
sudo docker info
信息内容:9、验证Docker是否安装成功
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 17.05.0-ce
.....
sudo docker run hello-world
这个命令会下载一个测试镜像系统并在一个容器中运行,最终如果出现以下结果表示安装成功。
文章图片
成功 10、常用命令
查看docker信息:docker info
查看当前正在运行的容器:docker ps
查看所有容器: dockerps -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书》
一步一步安装docker
关于添加Docker仓库的GPG密钥失败的问题
【Docker之环境】Docker教程
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- PMSJ寻平面设计师之现代(Hyundai)
- 太平之莲
- 闲杂“细雨”
- 七年之痒之后
- 深入理解Go之generate
- 由浅入深理解AOP
- 人生感悟记#环境仪器宋庆国成长记#072
- 期刊|期刊 | 国内核心期刊之(北大核心)
- 生活随笔|好天气下的意外之喜