docker exec -it ** bash
Redis
1.创建/app/redis/目录
2.将redis.conf放入/app/redis/目录下
conf可能版本不同会出问题,最好是下载镜像对应版本的conf修改
daemon
注释bind 127.0.0.1 ::1
requirepass 31415 设置密码 注释则无需密码
daemonize no 是否以守护线程启动 与 docker -d 冲突
appendonly no 开启RDB备份、还是AOF
docker images tomcat:….
3.增加/app/redis/data/目录
修改版本号6.0.8为你下载的版本,执行以下代码
docker run -d -p 6379:6379 --name myredis --privileged=true -v /app/redisdir/redis.conf:/etc/redis/redis.conf -v /app/redisdir/data:/data redis:6.0.8 redis-server /etc/redis/redis.conf
—privileged
- 大约在0.6版,privileged被引入docker。
- 使用该参数,container内的root拥有真正的root权限。
- 否则,container内的root只是外部的一个普通用户权限。
Tomcat
加共享log目录
准备web.xml 和 server.xml
创建/app/tomcatDir/conf/ 和 /app/tomcatDir/webapps/目录
docker images tomcat:…. 修改tomcat版本
修改 端口映射 和 tomcat版本后执行以下代码
docker run -d -p 80:8080 --name mytomcat -v /app/tomcatdir/conf/web.xml:/usr/local/tomcat/conf/web.xml -v /app/tomcatdir/conf/server.xml:/usr/local/tomcat/conf/server.xml -v /app/tomcatdir/webapps/:/usr/local/tomcat/webapps/ -v /app/tomcatdir/logs/:/usr/local/tomcat/webapps/logs tomcat:8.5.32
Mysql
创建/app/tomcatDir/conf/ 和 /app/tomcatDir/webapps/目录
docker images mysql:5.7
docker run -d -p 3306:3306 --name mydatabase --privileged=true -v /app/mysqldir/log:/var/log/mysql -v /app/mysqldir/data:/var/lib/mysql -v /app/mysqldir/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=31415 mysql:5.7
docker run — p 3306:3306 - e MYsQL_ROOT_PASSWORD=123456 - d mysql: 5.7
可能会出现 中文乱码
SHOW VARIABLES LIKE ‘character%’
/app/tomcatDir/conf/ 下 新建 my.cnf
cd /app/tomcatDir/conf/
vim my.cnf
cat my.cnf
修改 /app/tomcatDir/conf/ 下的 my.cnf
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
重启mysql容器
docker restart mysql
version: "3"
services:
microService:
image: zzyy_docker: 1.6
container_name: ms01
ports:
- "6001:6001"
volumes:
- /app/microService:/data
networks:
- atguigu_net
depends_on:
- redis
- mysql
redis:
image: redis:6.0.8
ports:
- "6379:6379"volumes:
- /app/redis/redis.conf:/etc/redis/redis.conf- / app/redis/data:/data
networks :
atguigu_net
command: redis-server /etc/redis/redis.conf