Centos8配置Docker---Docker配置mysql---idea链接MySQL测试

Centos 8 Docker 安装

配置安装前配置

uname -r   //查看内核版本,系统内核版本高于3.10
yum update //升级内核
sudo yum install -y yum-utils device-mapper-persistent-data lvm2   //依赖包安装
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  设置阿里云镜像源
yum install -y https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.13-3.1.el7.x86_64.rpm  //重级依赖包,后续不因依赖包问题报错

卸载podman-manpages

centos8 系统默认安装podman-manpages,与docker 冲突

yum list podman-manpages  //查看podman-manpages安装包
yum remove podman-manpages.noarch  //删除podman-manpages

安装Docker

yum install docker-ce --allowerasing  //替换版本不匹配,依赖同时被安装 docker-ce-cli containerd.io  
systemctl enable docker //设置开机启动
start docker //启动docker
docker run hello-world //查看运行

安装包地址

Docker删除

yum list installed | grep docker \\查看已安装的包及依赖包
yum remove docker-ce.x86_64  \\删除docker软件
rm -rf /var/lib/docker //删除docker相关的镜像,容器,自定义配置等文件

Docker 命令

docker -v //查看版本号
systemctl stop docker //停止docker
service docker restart //重启服务
docker start //启动一个或多个已经被停止的容器
docker stop //停止一个运行中的容器
docker restart //重启容器
systemctl restart docker.service //重置服务
docker search -s 10 mysql //搜索不少于10个版本的mysql

docker 命令大全

Docker镜像安装

docker search -s 10 mysql //搜索不少于10个版本的mysql
docker pull mysql 安装镜像,不指定版本安装lates版本
docker images //查看所有镜像
docker pull mysql:5.5
docker rmi image-id 删除指定镜像,使用镜像id

//使用docker运行镜像,-d后台运行,--name 自定义名称,-p 服务器ip:端口:容器端口, 运行镜像版本 (注意镜像版本最后)
docker run --name mytomcat -d   -p 0.0.0.0:8888:8080 tomcat:latest
docker ps //查看哪些容器在运行中
docker ps -a //查看所有容器,含停止状态的容器
docker start contatner-id  ///启动  容器 使用contatner id
docker stop contatner-id //停止
docker rm contatner-id //删除容器
docker logs container-name/container-id //查看容器日志,使用容器名或id

docker命令官方文档
docker镜像的使用,参考镜像下载地址,下面的文档
docker 镜像版本官方地址

Docker jar 打包images 过程实例

打包过程–>创建目录–>新建配置文件,同时文件夹内放置需要打包的文件–>使用docker build 打包

#创建目录imageobj
mkdir imageobj && cd imageobj
# 存入打包文件在同一目录 aaa.jar
#创建配置文件dockerfile
vim dockerfile
	FROM openjdk:8-jdk-alpine #从docker images 调用执行程序,如果没有从镜像拉取(镜像名称:版本)
	EXPOSE 8181 #执行后的端口
	ADD aaa.jar imagesname.jar  # 执行文件 打包后docker images 的名称
	ENTRYPOINT ["java","-jar","-Dfile.encoding=utf-8","imagesname.jar"] #执行文件的参数最后一个为docker镜像(与上面add添加的名称相同)

#打包文件 docker build from file to obj:version . (点表示当前路径开始加截文件)
docker build -f dockerfile -t objname:v1.0 .
#执行打包好的镜像到容器,--name 定义容器名称,-p映射端口(宿主ip:端口:容器端口) 容器:版本
docker run  -d --name newobjname  -p 0.0.0.0:8080:8181 objname:v1.0 

Docker images 导入导出 修改名称

#导出
docker save imagename:v1.0 > ./app_images_v1.0.tar #导出到当前目录 命名为app_images_v1.0
docker save imagename:v1.0 -o ./app_images_v1.0.tar #同上
#导入
docker load -i ./labreport_images_v5.0.tar 
#修改名称(docker tag id 名称:版本)
docker tag 98d8bb571885 aaa/bbb:latest

Docker 加速器配置

vim /etc/docker/daemon.json
# 与入以下文本
	{
	        "registry-mirrors": [
	                "https://kfwkfulq.mirror.aliyuncs.com",
	                "https://2lqq34jg.mirror.aliyuncs.com",
	                "https://pee6w651.mirror.aliyuncs.com",
	                "https://registry.docker-cn.com",
	                "http://hub-mirror.c.163.com"
	        ],
	        "dns": ["8.8.8.8","114.114.114.114"]
	}
#重启
systemctl daemon-reload
systemctl restart docker

Docker内配置项目运行环境

# 同上《jar 打包images 过程实例》相同
vim dockerfile
	from centos:centos7
	run yum install -y java-1.8.0-openjdk
	run yum install -y python3

docker build -f dockerfile -t centos/java_python:v1 .

Docker 安装mysql

docker pull mysql
docker run -d --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -p 3307:3306 mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci  --default-time_zone='+8:00'
docker exec -it mysql01 bash  //进入容器
//创建账号, 修改信息

idea使用jdbc连接MySQL数据库配置及测试

pom.xml ,jdbc连接mysql增加配置


     <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
        
		<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.20</version>
        </dependency>
        

配置文件:application.yml

spring:
  datasource:
    url: jdbc:mysql://192.168.1.100:3307/assetdb?serverTimezone=CTT
    username: admin
    password: 123
    driver-class-name: com.mysql.cj.jdbc.Driver

配置参数解析

url: jdbc:mysql://xxx:xxx/xxx?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT
useUnicode=true/false    	//是否开启unicode码
characterEncoding=utf-8   	//使用utf-8编码
useSSL=false 				//是否使用SSL验证
serverTimezone=GMT			//CTT(中国)/UTC(标准)/...

时区代码

测试文件:DemoApplicationTests.java

@SpringBootTest
class DemoApplicationTests {

    @Autowired
    DataSource dataSource;

    @Test
    public void testConnection() throws SQLException{
        System.out.println(dataSource.getClass());
        Connection connection= dataSource.getConnection();
        System.out.println(connection);
        connection.close();
    }

mysql测试连接成功
在这里插入图片描述
mysql查询数据库数据

@RestController
public class MyController {
    @Autowired
    JdbcTemplate jdbcTemplate;

    @RequestMapping("/query")
    public Map<String,Object> testJdbc(){
        List<Map<String,Object>> list = jdbcTemplate.queryForList("select * from department");
        return list.get(0);
    }

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值