CentOS安装Docker部署Mysql、jar及更新jar

Docker安装

通过阿里云轻量应用服务器远程连接
在这里插入图片描述

1、添加软件仓库

首先需要安装一些基本的软件

$ sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

使用阿里云的镜像仓库地址,阿里云镜像站地址为:https://mirrors.aliyun.com/,下拉找到 Docker CE 点进去就是 Docker CE 的镜像仓库使用说明,也可以通过这个地址直接打开:https://developer.aliyun.com/mirror/docker-ce

$ sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

2、安装 Docker

添加好软件仓源之后就可以安装 Docker 了:

sudo yum install docker-ce docker-ce-cli containerd.io

在下载好软件包之后可能会让你确认 Docker 的 GPG 密钥信息,确认密钥的指纹是否和 Docekr 文档上给出的密钥指纹信息一致:

060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35

一致的话就可以输入y确认。安装好之后 Docker 并没有启动,我们需要手动启动 Docker:

$ sudo systemctl start docker
$ sudo systemctl enable docker

可以将上面命令中的 start 换为 status 来查看 Docker 的运行情况。换为 stop 则停止 Docker,换为 enable 则启用开机自启,换为 disable 则禁用开机自启。

启动了 Docker 之后我们可以运行一个 hello-world 镜像试试看:

$ sudo docker run hello-world

3、配置非root用户使用docker

在安装好之后的 docker 命令只能通过 sudo 去执行,那是因为 Docker 的守护程序使用 Unix 套接字来监听,而 Unix 套接字是属于 root 用户的,其它用户必须使用 sudo 去访问。但是 Docker 在运行时会授予 docker 用户组下面的用户访问权限。而 docker 用户组在安装好 Docker 之后就自动被创建,如果没有可以使用下面的命令去创建:

$ sudo groupadd docker

接着我们需要将当前用户添加到 docker 用户组中:

$ sudo usermod -aG docker $USER

$USER 就是当前用户的用户名。

加好之后我们需要注销然后重新登陆才会使配置生效。我们也可以使用下面的命令来使配置生效:

$ newgrp docker

接着我们就可以运行不带 sudo 的 docker 命令:

$ docker run hello-world

备注

如果服务器重启后(docker我们已经设置开机自启;但是容器没有在运行!所以需要手动运行容器)查看正在运行的容器
在这里插入图片描述
查看一下镜像
在这里插入图片描述
查看所有容器
在这里插入图片描述
运行一下容器就正常了
在这里插入图片描述

通过Docker安装Mysql

1、拉取mysql镜像

可以加mysql版本-

docker pull mysql:8.0.19
docker pull mysql

2、创建mysql容器

–name mysqltest容器名
用navicat连接的时候用3307端口
MYSQL_ROOT_PASSWORD=123456 密码为123456

docker run -d --name mysqltest -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0.19

3、进入mysql容器

docker exec -it mysqltest bash
mysql -uroot -p
123456

4、navicat尝试连接mysql

主机:CentOS 7.3公网 IP 
端口:3307
用户名:root
密码:123456

如果报错:

Authentication plugin ‘caching_sha2_password’ cannot be loaded

原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password
修改加密规则
进入mysql容器

docker exec -it mysql bash
ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;

更新一下用户的密码

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

刷新权限

flush privileges;

通过Docker安装部署jar包

首先需要准备登入一个可视化软件方便操作
在这里插入图片描述

1、springboot项目打包

部署docker依赖

    <properties>
        <docker.image.prefix>springboot</docker.image.prefix>
    </properties>
 <!-- docker插件 -->

            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <!--<version>0.2.3</version>-->
                <version>0.4.11</version>
                <configuration>
                    <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
                    <dockerDirectory>src/main/docker</dockerDirectory>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>

点击打成jar包
在这里插入图片描述

2、Dockerfile文件制作

文件制作完成后需要把**.txt**去掉再放到服务器
在这里插入图片描述

3、把jar和Dockerfile放在服务器

通过可视化软件
在这里插入图片描述

4、运行

切换到文件夹

$ cd /home/java

查看一下文件夹的东西

$ ls

在这里插入图片描述

bulid一下 镜像名springbootdemo4docker

$ docker build -t springbootdemo4docker .

在这里插入图片描述

查看一下容器

$ docker images

在这里插入图片描述
运行刚刚创建的镜像容器

$ docker run -d -p 8080:8080 springbootdemo4docker

查看正常运行的容器

$ docker ps

在这里插入图片描述
成功!

更新jar包

更新好的jar包通过可视化软件把原来的jar包替换

切换到文件夹

$ cd /home/java

查看正在运行的容器

$ docker ps

在这里插入图片描述

停止运行容器

$ docker stop cbf45880f842

删除容器

$ docker rm cbf45880f842

在这里插入图片描述
查看所有容器

$ docker ps -a 
此时已经被删除了

在这里插入图片描述
查看镜像

$ docker images
镜像还在java8 不需要删除 项目需要删除

在这里插入图片描述

镜像删除

$ docker rmi ea8f1606312c

在这里插入图片描述
重新build一下

$ docker build -t baishitong .

重新运行一下容器

$ docker run -d -p 8080:8080 baishitong

成功
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值