docker上安装常用软件
一、安装tomcat(两个版本选择)
1、tomcat最新版10.0
1、查找镜像 docker search tomcat
2、拉取镜像 docker pull tomcat
3、查看镜像 docker images
4、运行容器 docker run -it -p 8080:8080 tomcat
5、解决访问404问题
(1)关闭防火墙
(2)启动容器后
-  
进入交互终端:docker exec -it 容器ID /bin/bash
 -  
查看文件:ls -l 里面有webapps和webapps.dist两个文件夹
 -  
删除webapps文件夹:rm -r webapps
 -  
将webapps.dist 改名为webapps:mv webapps.dist webapps
 
2、tomcat8.0免修改版
1、docker pull billygoo/tomcat8-jdk8
2、docker run -d -p 8080:8080 --name mytomcat8 billygoo/tomcat8-jdk8
二、安装mysql5.7
解决:
- 中文乱码
 - 数据备份,实例删除数据还能存在
 
1、拉取镜像:docker pull mysql:5.7
2、运行镜像获取容器实例(开启同步数据卷):
docker run -d -p 3306:3306 --privileged=true 
-v /lyruse/mysql/log:/var/log/mysql 
-v /lyruse/mysql/data:/var/lib/mysql 
-v /lyruse/mysql/conf:/etc/mysql/conf.d 
-e MYSQL_ROOT_PASSWORD=123456  --name mysql mysql:5.7
 
3、通过容器卷同步解决中文乱码问题
#进入配置文件
cd /lyruse/mysql/conf
#创建修改文件
vim my.cnf
 
#my.conf的内容
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
 
#查看my.cnf文件
cat my.cnf
 
4、重新启动MySQL容器并进入查看编码配置是否成功
#重新启动容器
docker restart mysql
#进入mysql容器实例
docker exec -it mysql /bin/bash
#打开mysql客户端
mysql -uroot -p
#查看编码
show variables like 'character%'
#查看数据库
show databases;
#创建数据库
create database db01;
#创建表
create table t1(id int,name varchar(20))
#加数据
insert into t1 values(1,'zs');
 
4、将容器删除,测试重新运行镜像容器卷里的内容会不会同步,达到数据备份和安全一致有效性
#删除正在运行的mysql
docker rm -f mysql
#重新启动
docker run -d -p 3306:3306 --privileged=true 
-v /lyruse/mysql/log:/var/log/mysql 
-v /lyruse/mysql/data:/var/lib/mysql 
-v /lyruse/mysql/conf:/etc/mysql/conf.d 
-e MYSQL_ROOT_PASSWORD=123456  --name mysql mysql:5.7
#查看容器
docker ps
#进入容器实例
docker exec -it mysql /bin/bash
#进入终端
mysql -uroot -p
#查看之前创建的数据库是否还在
show databases;
 
三、安装redis
1、拉取镜像文件
docker pull redis:6.0.8
 
2、在宿主机创建/app/redis目录
mkdir -p /app/redis
 
3、将一个redis.conf文件模板拷贝进/app/redis目录下

或者使用以下默认出厂的原始redis.conf ,新建复制粘贴或者使用xftp传输工具
 链接地址:redis默认出厂的原始redis.conf
4、运行容器
docker run  -p 6379:6379 --name myredis --privileged=true -v /app/redis/redis.conf:/etc/redis/redis.conf -v /app/redis/data:/data -d redis:6.0.8 redis-server /etc/redis/redis.conf
 
5、测试连接
#进入容器
docker exec -it myredis /bin/bash
#连接终端
redis-cli
#测试设值取值
set k1 v1
get k1
 
6、测试是否使用了宿主机配置文件
修改/app/redis/redis.conf
vim redis.conf
#修改数据库个数
datbases 14
7、重启容器进入测试
#重启容器
docker restart myredis
#进入容器
docker exec -it myredis /bin/bash
#连接终端
redis-cli
#测试数据库 
select 14










