文章目录
- 1.安装Tomcat
- 1.docker hub查找镜像并复制拉取镜像命令
- 2.拉取镜像到本地
- 1.执行官网命令
- 2.查看是否拉取成功
- 3.启动tomcat
- 4.退出和重启
- 1.由于是以交互方式启动的,所以不方便,直接ctrl + c退出
- 2.查看当前的容器
- 3.使用docker start 命令启动容器,这次就是后台启动了
- 5.访问tomcat首页
- 1.宝塔和腾讯云安全组开启8080端口
- 2.访问首页,发现是404,原因是新版的tomcat有所调整
- 3.进入容器发现webapps没有东西
- 4.将空的webapps删除,webapps.dist修改为webapps即可
- 5.再次访问,成功!
- 6.删除tomcat
- 1.exit退出并强制删除
- 2.删除镜像
- 7.安装免修改版本的tomcat8
- 1.直接运行run命令,如果本地没有会自动去远程仓库拉
- 2.查看运行状态
- 3.访问首页
- 2.MySQL安装
- 1.拉取MySQL5.7到本地
- 2.启动mysql容器
- 3.进入容器实例
- 4.登录mysql
- 5.测试MySQL使用
- 6.使用IDEA连接这个数据库
- 1.连接成功
- 2.可以正常使用
- 7.中文乱码问题
- 1.测试插入中文
- 2.查看一下docker中的默认字符集编码(在mysql容器内执行!)
- 8.容器数据卷问题
- 1.删除这个mysql容器,此时数据都没了,所以需要容器数据卷
- 9.安装mysql实战版
- 1.启动mysql容器,并设置容器数据卷
- 2.查看容器
- 1.查看运行情况
- 2.查看详细信息
- 3.解决中文乱码问题
- 1.进入/mysql5.7/mysql1/conf
- 2.创建my.cnf并写入配置内容
- 3.重启mysql容器使其生效
- 4.重新登陆mysql容器,查看编码
- 5.插入中文测试
- 4.测试删除MySQL
- 1.删除
- 2.再重新启动mysql
- 3.查看数据,成功恢复
- 3.Redis常规安装
- 1.拉取redis:6.0.8到本地
- 2.Redis基本使用(一般不这么用)
- 1.启动Redis
- 2.进入Redis
- 3.测试使用
- 3.在宿主机新建目录 /app/redis
- 4.从redis6.0.8中得到一份redis.conf的配置文件
- 1.将压缩包上传到/opt目录下
- 2.进入/opt目录然后解压
- 3.复制一份redis.conf到/app/redis目录下
- 5.对配置文件进行修改
- 1.编辑配置文件
- 2.设置redis密码 requirepass foobared
- 3.使redis支持远程访问 bind 127.0.0.1 和 protected-mode
- 4.设置daemonize no,如果是yes会与docker的-d方式冲突
- 6.启动Redis
- 7.连接Redis
- 1.使用exec命令进入
- 2.连接redis-cli
- 3.证明一下读取到了自己的配置文件
- 1.退出容器,修改/app/redis/redis.conf的databases为10
- 2.重启一下Redis容器
- 3.重新连接redis-cli,测试,发现确实只有10个库了
- 4.使用Jedis连接Redis测试
- 1.前提条件
- 2.测试连接
1.安装Tomcat
1.docker hub查找镜像并复制拉取镜像命令
https://hub.docker.com/
2.拉取镜像到本地
1.执行官网命令
docker pull tomcat
2.查看是否拉取成功
docker images tomcat
3.启动tomcat
docker run -it -p 8080:8080 --name myfirtomcat tomcat
4.退出和重启
1.由于是以交互方式启动的,所以不方便,直接ctrl + c退出
2.查看当前的容器
docker ps -a
3.使用docker start 命令启动容器,这次就是后台启动了
docker start myfirtomcat
5.访问tomcat首页
1.宝塔和腾讯云安全组开启8080端口
systemctl start firewalld && firewall-cmd --permanent --add-port=8080/tcp && firewall-cmd --reload && firewall-cmd --query-port=8080/tcp
2.访问首页,发现是404,原因是新版的tomcat有所调整
3.进入容器发现webapps没有东西
4.将空的webapps删除,webapps.dist修改为webapps即可
5.再次访问,成功!
6.删除tomcat
1.exit退出并强制删除
2.删除镜像
7.安装免修改版本的tomcat8
1.直接运行run命令,如果本地没有会自动去远程仓库拉
docker run -d -p 8080:8080 --name mytomcat8 billygoo/tomcat8-jdk8
2.查看运行状态
3.访问首页
2.MySQL安装
1.拉取MySQL5.7到本地
docker pull mysql:5.7
2.启动mysql容器
- 端口映射为8080
- root的密码为root
docker run -p 8080:3306 --name mysql5.7 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
3.进入容器实例
docker exec -it 33fa76aff770 /bin/bash
4.登录mysql
mysql -u root -p
5.测试MySQL使用
6.使用IDEA连接这个数据库
1.连接成功
2.可以正常使用
7.中文乱码问题
1.测试插入中文
2.查看一下docker中的默认字符集编码(在mysql容器内执行!)
show variables like 'character%';
8.容器数据卷问题
1.删除这个mysql容器,此时数据都没了,所以需要容器数据卷
9.安装mysql实战版
1.启动mysql容器,并设置容器数据卷
- 端口映射为8080
- root用户密码为root
- /mysql5.7/mysql1/data 映射 /var/lib/mysql
- /mysql5.7/mysql1/log 映射 /var/log/mysql
- /mysql5.7/mysql1/conf 映射 /etc/mysql/conf.d
- 容器名字为mysql1
docker run -d -p 8080:3306 --privileged=true \
-v /mysql5.7/mysql1/data:/var/lib/mysql \
-v /mysql5.7/mysql1/log:/var/log/mysql \
-v /mysql5.7/mysql1/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root \
--name mysql1 mysql:5.7
2.查看容器
1.查看运行情况
2.查看详细信息
docker inspect mysql1
3.解决中文乱码问题
1.进入/mysql5.7/mysql1/conf
cd /mysql5.7/mysql1/conf
2.创建my.cnf并写入配置内容
echo "[client]
default_character_set=utf8mb4[mysqld]
collation_server = utf8mb4_unicode_ci
character_set_server = utf8mb4" > my.cnf
3.重启mysql容器使其生效
docker restart mysql1
4.重新登陆mysql容器,查看编码
5.插入中文测试
create database db01;
use db01;
create table test
(id int,name varchar(32)
);
insert into test (id, name)
values (1, '孙显圣');
select *
from test;
4.测试删除MySQL
1.删除
2.再重新启动mysql
docker run -d -p 8080:3306 --privileged=true \
-v /mysql5.7/mysql1/data:/var/lib/mysql \
-v /mysql5.7/mysql1/log:/var/log/mysql \
-v /mysql5.7/mysql1/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root \
--name mysql1 mysql:5.7
3.查看数据,成功恢复
3.Redis常规安装
1.拉取redis:6.0.8到本地
docker pull redis:6.0.8
2.Redis基本使用(一般不这么用)
1.启动Redis
docker run -d -p 8080:6379 redis:6.0.8
2.进入Redis
docker exec -it 843638d7e126 /bin/bash
3.测试使用
3.在宿主机新建目录 /app/redis
mkdir -p /app/redis
4.从redis6.0.8中得到一份redis.conf的配置文件
1.将压缩包上传到/opt目录下
2.进入/opt目录然后解压
cd /opt && tar -zxvf redis-6.0.8.tar.gz
3.复制一份redis.conf到/app/redis目录下
cp /opt/redis-6.0.8/redis.conf /app/redis/redis.conf
5.对配置文件进行修改
1.编辑配置文件
vim /app/redis/redis.conf
2.设置redis密码 requirepass foobared
3.使redis支持远程访问 bind 127.0.0.1 和 protected-mode
4.设置daemonize no,如果是yes会与docker的-d方式冲突
6.启动Redis
- 端口映射为8080
- 名字为myredis
- /app/redis/redis.conf 挂载 /etc/redis/redis.conf
- /app/redis/data:/data 挂载 /data
- -d:后台启动
- redis:6.0.8:镜像名字
- redis-server /etc/redis/redis.conf 指定容器中的配置文件
docker run -p 8080: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
7.连接Redis
1.使用exec命令进入
docker exec -it myredis /bin/bash
2.连接redis-cli
- 这里的-p指向的是容器的redis端口默认是6379
- -a参数指定密码
redis-cli -p 6379 -a
3.证明一下读取到了自己的配置文件
1.退出容器,修改/app/redis/redis.conf的databases为10
vim /app/redis/redis.conf
2.重启一下Redis容器
docker restart myredis
3.重新连接redis-cli,测试,发现确实只有10个库了
4.使用Jedis连接Redis测试
1.前提条件
- 目前的redis在服务器上,端口是8080,也设置了密码
- 需要确保端口开放了
- 确保前面对配置文件都进行了相应修改