1、概述
星期天没啥事,想着写个vue和springboot的小例子,预计两天完成,结果扯了三四天了,简直一时塘坑爽,一直躺坑一直爽啊!!!
先从docker说起吧
2、docker简介
(1)
容器
(container)
是代码
和其所依赖环境和软件
的标准单元,因此应用程序很容易从一个环境
复制到另一个环境
(2)镜像
image
,可以看做一个软件包、安装包(比如.apk、.iso),其中包含运行应用程序所需的一切:代码,运行时,系统工具,系统库和设置
(3)仓库depository
,用来存储docker镜像
的地方,有点儿像github
2.1 架构
2.2 优点
在Docker Engine上运行的Docker容器:
标准
: Docker创建了容器的行业标准,因此它们可以在任何地方移植
轻量级
:容器共享计算机的OS系统内核,因此不需要每个应用程序都具有OS,从而提高了服务器效 率并降低了服务器和许可成本
安全
:容器中的应用程序更安全,Docker提供了业界最强大的默认隔离功能
2.3 docker和虚拟机比较(比如vmware)
可以看出docker比虚拟机简洁了不少
3、docker安装(centos环境)
其他环境可参考:菜鸟教程docker
3.1、卸载旧版本,没有可以不执行
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
3.2 设置仓库
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3.3 正式安装
两个y同意下
yum install docker-ce docker-ce-cli containerd.io
3.4 docker启动
systemctl start docker
4、docker生命周期相关命令
启动docker
systemctl start docker
重启docker
systemctl restart docker
关闭docker
systemctl stop docker
查看docker状态
service docker status #shift+: q 回车退出
5、docker图形面板
docker pull portainer/portainer
docker run -d -p 9000:9000 --restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
--name prtainer portainer/portainer
访问9000端口即可,首次需要先设置密码,满8位
可以看到面板对应的容器
5.docker开启和关闭2375端口
vi /usr/lib/systemd/system/docker.service
Service下修改添加 -H tcp://0.0.0.0:2375 ,关闭的话去掉就可以
[Service]
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
重启
systemctl daemon-reload & systemctl restart docker
提醒:不用的时候一定记得关闭2375端口,否则会被恶意扫描到,在你的机器装恶意容器。