目录
一
1.docker怎样解决大型项目依赖关系复杂,不同组件依赖的兼容问题
2.docker 如何解决开发、测试、生产环境有差异的问题
3.docker和虚拟机的差异
4.镜像和容器
5.docker结构
6.dockerhub
7.docker安装
8.注意:docker应用需要用到各种端口,逐一去修改防火墙设置非常麻烦,建议提前关闭防火墙
9.镜像配置(加速镜像)
二.docker基本操作
1.镜像操作
2.容器操作编辑
三自定义镜像
1.镜像结构
四.DockerCompose
五.docker镜像仓库
1..简化版镜像仓库(不推荐)
2.带有图形化界面版本(推荐)
一
1.docker怎样解决大型项目依赖关系复杂,不同组件依赖的兼容问题
-
docker允许开发中将应用、依赖、函数库、配置一起打包,形成可以移植镜像
-
docker应用运行在容器中,是哟个沙箱机制,相互隔离
2.docker 如何解决开发、测试、生产环境有差异的问题
-
docker镜像中包含完整运行环境,包括系统函数库,仅依赖系统的Linux内核,因此可以在任意Linux操作系统上运行。
3.docker和虚拟机的差异
-
docker是一个系统进程;虚拟机是在操作系统中的操作系统
-
docker体积小、启动速度快、性能好;虚拟机体积大、启动速度慢、性能一般
4.镜像和容器
-
镜像:docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起。
-
容器:镜像中的应用程序运行后形成的进程就是容器,docke会给容器做隔离,对外不可见。
5.docker结构
-
服务端:接受命令或远程请求,操作镜像或容器
-
客户端:发送命令或请求到docker服务端
6.dockerhub
-
一个镜像托管的服务器,类似还有阿里云镜像服务,统称dockerregistry
7.docker安装
-
卸载(已经安装的)
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-selinux \docker-engine-selinux \docker-engine \docker-ce \命令太长,想换行用此
-
安装docker
-
安装yum工具
sudo yum install -y yum-utils \device-mapper-persistent-data \lvm2
-
更新本地镜像源
sudo yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
-
更新yum缓存
sudo yum clean all sudo yum makecache
-
安装docker-ce
# 安装最新版本 docker sudo yum -y install docker-ce # 安装指定版本 docker sudo yum install docker-ce=<VERSION STRING>
-
8.注意:docker应用需要用到各种端口,逐一去修改防火墙设置非常麻烦,建议提前关闭防火墙
-
关闭防火墙
-
systemctl stop firewalld #禁止开机启动防火墙 sysytemctl disable firewalld
-
-
重启docker
systemctl start docker #启动 systemctl stop docker #停止 systemctl restart docker #重启
-
查看docker版本
docker -v
9.镜像配置(加速镜像)
网址:阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台
二.docker基本操作
1.镜像操作
-
镜像相关命令
-
-
镜像操作命令
2.容器操作
-
案例
注意:容器原本是隔离的,通过端口映射使外界通过端口访问容器服务
-
案例
数据卷:是一个虚拟目录,指向宿主机文件系统中的某个目录
-
操作
-
案例
三自定义镜像
1.镜像结构
四.DockerCompose
五.docker镜像仓库
1..简化版镜像仓库(不推荐)
Docker
官方的Docker Registry
是一个基础版本的Docker
镜像仓库,具备仓库管理的完整功能,但是没有图形化界面。
搭建方式比较简单,命令如下
docker run -d \--restart=always \--name registry \-p 5000:5000 \-v registry-data:/var/lib/registry \registry
2.带有图形化界面版本(推荐)
使用dockercompose部署带有图像界面的dockerregistry
version: '3.0' services: registry: image: registry volumes: - ./registry-data:/var/lib/registry ui: image: joxit/docker-registry-ui:static ports: - "8080:80" environment: - REGISTRY_TITLE=智教育私有仓库 - REGISTRY_URL=http://registry:5000 depends_on: - registry
2.2配置docker信任地址
因为采用的使http协议,默认不被docker信任,需要配置
#打开要修改的文件 vim /etc/docker/daemon.json #添加内容 "insecure-registries:["http://192.168.146.141:8080"]" #重加载 systemctl daemon-reload #重启docker systemctl restart docker