文章目录
- Docker安装镜像容器
- 安装 Tomcat
- 安装 MySQL
- 安装 MySQL实战版
- 安装 Redis
Docker安装镜像容器
步骤
搜索镜像
拉取镜像
查看镜像
启动镜像 - 服务端口映射
停止容器
移除容器
安装 Tomcat
1、DockerHub上查找Tomcat镜像
docker search tomcat
2、从DockerHub拉取Tomcat镜像到本地
docker pull tomcat
3、查看本地拉取到的镜像
docker images
4、使用tomcat镜像创建容器实例(也叫运行镜像)
docker run -it -p 8080:8080 tomcat
-p 小写,主机端口:docker容器端口
-P 大写,随机分配端口
i:交互
t:终端
d:后台
5、查看容器运行结果
docker ps
6、访问猫首页
报错404时:
docker images
docker run -d -p 8888:8080 tomcat:7
docker exec -it 容器ID /bin/bash
/usr/local/tomcat # ls -l
/usr/local/tomcat # rm -r webapps
/usr/local/tomcat # mv webapps.dist webapps
7、免修改版说明
docker pull billygoo/tomcat8-jdk8
docker run -d -p 8080:8080 --name mytomcat8 billygoo/tomcat8-jdk8
安装 MySQL
1、安装镜像容器
docker search mysql
docker pull mysql:5.7
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
docker ps
docker exec -it 容器ID /bin/bash
mysql -uroot -p
2、建表
create database db01;
use db01;
create table aa(id int, name varchar(20));
insert into aa values(1,‘ff’);
select * from aa;
3、主机Navicat连接服务器数据库容器
安装 MySQL实战版
1、新建mysql容器实例
docker run -d -p 3306:3306 --privileged=true -v /zzyyuse/mysql/log:/var/log/mysql -v /zzyyuse/mysql/data:/var/lib/mysql -v /zzyyuse/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
2、通过容器卷同步给mysql容器实例
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
3、 重新启动mysql容器实例再重新进入并查看字符编码
docker restart mysql
docker exec -it mysql bash
mysql -uroot -p
4、 再新建库新建表再插入中文测试
5、结论
之前的DB无效
修改字符集操作+重启mysql容器实例
之后的DB 有效,需要新建
结论:docker安装完MySQL并run出容器后,建议请先修改完字符集编码后再新建mysql库-表-插数据
安装 Redis
1、安装镜像
docker pull redis
docker images
docker run -d -p 6379:6379 redis
docker ps
docker exec -it 容器ID bash
2、Redis操作
redis- cli
set k1 v1
get k1
ping
3、Docker挂载主机目录Docker访问出现cannot open directory .: Permission denied
解决办法:在挂载目录后多加一个–privileged=true参数即可
4、在CentOS宿主机下新建目录/app/redis
mkdir -p /app/redis
5、将一个redis.conf文件模板拷贝进/app/redis目录下
cp /myredis/redis.conf /app/redis/
ls -l
6、
3 /app/redis目录下修改redis.conf文件
3.1 开启redis验证 可选
requirepass 123
3.2 允许redis外地连接 必须
注释掉 # bind 127.0.0.1
3.3 daemonize no
将daemonize yes注释起来或者 daemonize no设置,因为该配置和docker run中-d参数冲突,会导致容器一直启动失败
3.4 开启redis数据持久化 appendonly yes 可选
7、使用redis6.0.8镜像创建容器(也叫运行镜像)
docker run -p 6379:6379 --name myr3 --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
8、测试redis-cli连接上来
docker exec -it 运行着Rediis服务的容器ID redis-cli
9、请证明docker启动使用了我们自己指定的配置文件
记得重启服务