Docker----------day3(tomcat、mysql8、redis6.2.6常用软件安装)

常规安装大体步骤

Docker----------day3(tomcat、mysql8、redis6.2.6常用软件安装)_第1张图片

1.安装tomcat

1.查找tomcat

docker search tomcat

2.拉取tomcat

docker pull tomcat

3.docker images查看是否有拉取到的tomcat

4.使用tomcat镜像创建容器实例(也叫运行镜像)

docker run -it -p 8080:8080 tomcat

Docker----------day3(tomcat、mysql8、redis6.2.6常用软件安装)_第2张图片
5.新版tomcat把webapps.dist目录换成webapps
在这里插入图片描述
6.

docker run -d -p 8080:8080 --name mytomcat8 billygoo/tomcat8-jdk8

7.访问tomcat

http://localhost:8080

2.安装redis

2.1Docker搜索redis镜像

docker search redis

2.2二、Docker拉取镜像

命令::docker pull <镜像名称>:<版本号>

docker pull redis

2.3三、Docker挂载配置文件

接下来就是要将redis 的配置文件进行挂载,以配置文件方式启动redis 容器。(挂载:即将宿主的文件和容器内部目录相关联,相互绑定,在宿主机内修改文件的话也随之修改容器内部文件)

1)、挂载 redis 的配置文件

2)、挂载 redis 的持久化文件(为了数据的持久化)。

本人的配置文件是放在

liunx 下redis.conf文件位置: /home/redis/my/redis.conf

liunx 下redis的data文件位置 : /home/redis/my/data

mkdir -p /home/redis/my/data

上传配置文件
scp [email protected]:/home/redis/my C:\Users\xxx\Desktop\redis.conf

docker run --restart=always --log-opt max-size=100m --log-opt max-file=2 -p 6379:6379 --name myredis -v /home/redis/my/redis.conf:/etc/redis/redis.conf -v /home/redis/my/data:/data -d redis redis-server /etc/redis/redis.conf  --appendonly yes  --requirepass xql123
  • restart=always 总是开机启动
  • log是日志方面的
  • p 6379:6379 将6379端口挂载出去
  • name 给这个容器取一个名字
  • v 数据卷挂载
  • /home/redis/myredis/myredis.conf:/etc/redis/redis.conf 这里是将 liunx 路径下的myredis.conf 和redis下的redis.conf 挂载在一起。
  • /home/redis/myredis/data:/data 这个同上
  • d redis 表示后台启动redis
  • redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录 /etc/redis/redis.conf 也就是liunx下的/home/redis/myredis/myredis.conf
  • appendonly yes 开启redis 持久化
  • requirepass 000415 设置密码

通过docker ps指令查看启动状态

docker ps -a |grep myredis # 通过docker ps指令查看启动状态,是否成功.

2、查看容器运行日志

命令:docker logs --since 30m <容器名>


此处 --since 30m 是查看此容器30分钟之内的日志情况。

docker logs --since 30m myredis

Docker----------day3(tomcat、mysql8、redis6.2.6常用软件安装)_第3张图片
3、容器内部连接进行测试

docker exec -it myredis redis-cli

验证密码

auth 密码

查看当前redis有没有设置密码:(得验证通过了才能输入的)

config get requirepass

配置文件

# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1 ::1
#bind 127.0.0.1

protected-mode no
port 6379
tcp-backlog 511
requirepass 000415
timeout 0
tcp-keepalive 300
daemonize no
supervised no
pidfile /var/run/redis_6379.pid
loglevel notice
logfile ""
databases 30
always-show-logo yes
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir ./
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync no
repl-disable-tcp-nodelay no
replica-priority 100
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
appendonly yes
appendfilename "appendonly.aof"
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble yes
lua-time-limit 5000
slowlog-max-len 128
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
stream-node-max-bytes 4096
stream-node-max-entries 100
activerehashing yes
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes

删除redis

docker ps -a
docker stop myredis # myredis 是我启动redis 命名的别
docker rm myredis

查看全部镜像 命令:docker images
docker rmi 739b59b96069 # 这是我镜像redis id

mysql8安装

1.1领取镜像

docker search mysql
docker pull mysql

2.启动交互式添加容器数据卷

#不添加容器数据卷
docker run -p 3307:3306 --name mysql_master -e MYSQL_ROOT_PASSWORD=xql123 -d mysql

#添加容器数据卷,conf.d是自定义的配置文件存放目录,/home/...为宿主机中自定义目录
docker run -d -p 3307:3306 --privileged=true -v /home/mysql8/log:/var/log/mysql -v /home/mysql8/data:/var/lib/mysql -v /home/mysql8/conf:/etc/mysql/conf.d --name mysql_master -e MYSQL_ROOT_PASSWORD=xql123 -d mysql

3.查看当前是否启动和日志


docker ps

 docker logs --since 30m mysql_master

Docker----------day3(tomcat、mysql8、redis6.2.6常用软件安装)_第4张图片

4.进入容器登录mysql

docker exec -it mysql_master /bin/bash

登录
mysql -uroot -p



ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'xql123';
#'%'表示对允许所有ip访问
#'123456'为自定义的密码


ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'xql123';
#'%'表示对允许所有ip访问
#'xql123'为自定义的密码


flush privileges; /*刷新权限*/

查看编码字符集
show variables like 'character%';

Docker----------day3(tomcat、mysql8、redis6.2.6常用软件安装)_第5张图片

5.去主机容器卷目录新增文件my.cnf

存放到/home/mysql8/conf目录下

[client]
default_character_set=utf8
[mysqld]
collation_server=utf8_general_ci
character_set_server=utf8

我选择本地上传

本地新建my.cnf
内容如上

scp上传
scp -r C:\Users\xuqinglei\Desktop\my.cnf root@主机ip:/home/mysql8/conf/

6.重启mysql 查看编码

docker restart 容器ID


进入容器 docker exec -it mysql_master /bin/bash


show variables like 'character%';

Docker----------day3(tomcat、mysql8、redis6.2.6常用软件安装)_第6张图片

7.外部navicat链接测试(我案例是3307注意端口号)

Docker----------day3(tomcat、mysql8、redis6.2.6常用软件安装)_第7张图片

你可能感兴趣的:(docker,docker,redis,java)