用dw设计网站模板下载,网络热词2023流行语及解释,大连城乡建设网官网,丹阳火车站对面规划文章目录 1. docker 基础1.1 docker 安装配置镜像加速器拉取镜像的仓库#xff1a; docker 部署Mysql 镜像docker 命令的详细解释docker 常见命令docker 数据卷docker 相关命令总结 2.自定义镜像2.1 dockerfile2.2 try 构建一个Java镜像#xff0c;并部署2.3 总结: 3. docker… 文章目录 1. docker 基础1.1 docker 安装配置镜像加速器拉取镜像的仓库 docker 部署Mysql 镜像docker 命令的详细解释docker 常见命令docker 数据卷docker 相关命令总结 2.自定义镜像2.1 dockerfile2.2 try 构建一个Java镜像并部署2.3 总结: 3. docker 网络自定义网络 项目部署后端部署前端部署 1. docker 基础
1.1 docker 安装 查看是否安装的镜像已经在系统中存在 docker images 存在2不存在 3 卸载旧版本 yum remove docker 首先安装 yum 工具 yum install -y yum-utils \ device-mapper-persistent-data \ lvm2 --skip-broken -y是yum 的一个命令表示在安装软件包的时候不需要用户确认。使用 -y 选线会自动回答 yes 来确认安装 --skip-broken这是yum命令的另一个选项。当使用–skip-broken选项时yum会尝试安装尽可能多的软件包而不会停止在遇到依赖问题或错误的软件包上。 lvm2这是要安装的第三个软件包的名称。lvm2是Logical Volume Manager的一个实现用于管理磁盘卷和逻辑卷。 设置docker 镜像 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sed -i s/download.docker.com/mirrors.aliyun.com/docker-ce/g /etc/yum.repos.d/docker-ce.repo yum makecache 安装docker安装docker时直接安装docker-compose (安装docker时直接安装docker-compose) systemctl stop firewalld ,启动docker要关闭防火墙 systemctl disable firewalld 禁止开机启动防火墙 查看防火墙状态 systemctl status firewalld 启动docker systemctl start docker 查看docker的状态systemctl status docker 查看docker 的版本 docker -v 还没结束哦看接下来的…
配置镜像加速器
tee /etc/docker/daemon.json -EOF { registry-mirrors: [https://xxxx.mirror.aliyuncs.com] } EOF 复制内容注意把其中的镜像加速地址改成你自己的sudo systemctl daemon-reload 重新加载sudo systemctl restart docker 重启docker
拉取镜像的仓库
https://hub.docker.com/
docker 本身也是一个拂服务输入的一切命令都是发给进程的。
docker 部署Mysql 镜像
按照下图运行即可 docker run –name mysql -e MYSQL_ROOT_PASSWORD密码 -p 3309:3306 – 端口映射 -v /root/images/mysqlImage/tmp/mysql/conf/hmy.cnf://etc/mysql/conf.d/hmy.cnf -v /root/images/mysqlImage/tmp/mysql/data:/var/lib/mysql -d mysql:5.7.25 注
当我们利用docker 安装应用的时候docker 会自动搜索并下载应用镜像镜像不仅包含应用本身还包含应用运行所需要的环境、配置 、函数库。docker 会在运行镜像时创建一个隔离环境称为容器。运行镜像时创建一个隔离环境因此可以开启多个服务。 docker 命令的详细解释 -d 服务器在后台运行--name 容器名:给容器起一个名字-p 宿主机端口():容器内端口(进程不需要改动) 转到容器内部-e key value eviorment -e 配置环境变量 由镜像的制作者mysql版本号 镜像的名称版本号
docker 常见命令
docker 最常见的命令就是操作镜像容器的命令详见官方文档 https://docs.docker.com https://docs.docker.com/engine/reference/run/ 直接到官方命令文档 docker pull 从镜像中拉取镜像docker images 查看所有镜像docker rmi 删除镜像docker rm 删除容器docker build 自己构建镜像docker save 将自己构建的镜像通过 命令 保存到本地形成一个压缩文件。docker load 拿到压缩包解压用docker push 推送到镜像仓库中docker exec 进入容器 **注意
**docker stop 相当于停止的时容器内部的进程。容器还在 下次运行可以用 docker start 运行。docker run 运行一个新的容器
案例实现
去docker hub 中搜索nginx 拉取nginx镜像 docker pull nginx查看镜像 docker images创建并运行容器 docker run -d --name nginxnana -p 80:80 nginx查看运行的容器 docker ps停掉容器 docker stop 容器名查看容器日志docker logs -f nginxnana进入容器内部 docker exec -it 容器名 bash退出容器 exit删除容器 docker rm 容器名 -f -f 强制删除还有命令的别名可以自己研究~~~
docker 数据卷
定义 容器内目录与宿主机目录的之间的映射的桥梁。 案例 创建一个nginx 创建有挂载数据卷的 nginx 容器 查看数据卷详细信息 docker volume inspect 数据卷名称
案例2 查看mysql 是是否有数据卷挂载
docker inspect 容器名 Mouth 放的是挂载的信息 基于数组机目录实现Mysql 数据目录配置文件初始化脚本的挂载。 在使用 docker run 的时候使用-v 本地目录容器内目录 可以完成本地目录的挂在
docker 相关命令总结
docker images 查看镜像docker rmi 删除镜像docker push: 推送镜像到镜像服务器docker save 会将镜像保存为一个压缩包可以用U盘拷贝之后docker load 加载压缩包为镜像。docker inspect 容器名 查看docker 容器
2.自定义镜像
镜像中的概念
镜像是分层的基础镜像不用每次下载入口 2.1 dockerfile 当我们编写好了dockerfile可以用命令请去构建镜像 docker build -t myImage.1.0 .
-t 是给构建的镜像起名字格式: repository:tag 不指定tag默认为latest. 是指定dockerfile 所在的目录如果就在当前目录则指定为 .
2.2 try 构建一个Java镜像并部署
将文件打为jar包上传到linux中加载镜像docker load -i 构建镜像 docker build -t 镜像名字 dockerfile文件名运行: docker run -d --name 名字 -p 端口映射 镜像名字docker ps 查看运行状态docker logs -f 容器名 访问 ip:端口号/路径
2.3 总结: 3. docker 网络
docker inspect 容器名称 查看某个容器的配置 配置中有 NetWork 网络的配置。
分析 在安装docker 的时候docker 会在虚拟机中创建虚拟网卡名字默认是docker0 .
如上图每个容器虽然是独立的但是因为通过 docker 建立了连接是同一网络段的因此可以相互访问。测试通过进入容器对其他容器 ping ip地址
但是上面的通过ip ping 的是有风险的如果一个容器关闭了新的容器启动占用了上一个容器的ip地址这时候就ping 不通了因此这样不合适。因此出现了 自定义网络。
自定义网络
加入自定义网络 直接 ping 容器名称就可以即使 ip 改变也可以ping的通
docker network lsdocker network create 名字 ip addrdocker network connect 网络名 网段名让容器加入网络docker run -d -name 名字 -p 映射端口端口 --network 网络名称 镜像名称启动容器的时候就是指定连接的网络
注意 部署项目的时候容器互联的问题就解决了。
项目部署
后端部署
项目打包为jar包构建镜像 docker build -t 名字:tag dockerfile运行容器 docker run -d --name 名字 -p 端口映射:端口 --netwok 网络名称 镜像名称查看日志前面有讲过
前端部署
创建一个nginx 容器提供的nginx.conf、html目录与容器挂载
docker run -d --name nginx -p 18080:18080 -p 18081:18081 -v 宿主路径/usr/share/nginx/html -v 宿主文件/etc/nginx/nginx.conf --netwok 网络名称 nginx
11111