Docker相关环境搭建

基本概念

Docker的三大核心概念:镜像、容器、仓库

  • 镜像:类似虚拟机的镜像、用俗话说就是安装文件
  • 容器:类似一个轻量级的沙箱,容器是从镜像创建应用运行实例,可以将其启动、开始、停止、删除、而这些容器都是相互隔离、互不可见的
  • 仓库:类似代码仓库,是Docker集中存放镜像文件的场所

环境安装

本人服务器linux版本CentOS 7.7 64位

  • 安装docker:
# 安装ce版docker
yum install docker-ce
# 查看安装docker的版本
docker version
  • 启动docker的远程访问服务
# 开启docker服务
systemctl start docker
# 开机自启docker服务
systemctl enable docker
# yum安装vim工具
yum install vim
# 将docker服务暴露在8010端口,需要编辑docker.service文件中[service]的ExecStart属性如下
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:8010 -H unix://var/run/docker.sock
# 重载docker的配置,重启docker服务,就可以在本地电脑通过访问服务器8010端口,使用docker服务
systemctl daemon-reload
systemctl restart docker
  • java-web项目的docker环境搭建
# 配置使用docker镜像源,中拉取常用镜像来加快下载速度
vim /etc/docker/daemon.json
# 添加如下内容:
{
   "registry-mirrors" : ["https://docker.mirrors.ustc.edu.cn"]
}
# 保存退出后,重启docker服务使配置生效
systemctl restart docker
docker pull java:8
# 拉取最新版本的mysql
docker pull mysql
# 基于mysql镜像,启动容器mysql-master,(主机(宿主)端口:容器端口)=(3306:3306),root账号密码为root
docker run --name mysql-master -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql

# 在命令行中通过如下命令可以测试是否能够使用mysql服务
# 进入mysql-master容器内部,可以使用mysql
docker exec -it mysql-master bash
# 登录---密码为root
mysql -u root -p
# 如果项目启动时报错如下:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. 
# 说明未设置当前时区,需要设置当前所在时区为东八区。
set global time_zone = "+8:00";
# 退出
quit;
exit
  • 在navicat测试能否连接docker中的mysql容器
    在这里插入图片描述

idea集成docker

1、安装docker插件
在这里插入图片描述
2、在项目的根目录中新建Dockerfile文件

# 基于java:8镜像进行扩展
FROM java:8
# 指定制作该镜像的作者和联系方式
MAINTAINER yunzhong 457854314@qq.com
# 指定容器内进程对外开放的端口
EXPOSE 8090
# 定义数据卷位置---存放容器共享文件的位置
VOLUME /tmp
# 修改镜像的命令---安装或配置,每一步会创建一个新的镜像层
RUN mkdir /hk
RUN mkdir /hk/files
RUN mkdir /hk/logs
# 将maven打成的jar包复制到镜像目录中(相对路径---默认"."就是Dockerfile所在目录)
ADD target/hk-0.0.1-SNAPSHOT.jar hk.jar
# 指定容器启动时,需要执行的命令(运行该jar程序)
ENTRYPOINT java -server -jar hk.jar

3、启动配置
在这里插入图片描述

在这里插入图片描述
4、发布本地项目到docker
在这里插入图片描述
5、测试docker是否部署成功
在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值