Docker四 | Docker下安装常用软件

目录

Docker下安装MySQL

Docker下安装Redis 

Docker下安装Tomcat

免修改版Tomcat安装


Docker下安装MySQL

如果在Docker下直接拉取MySQL并运行镜像,由于没有指定字符编码集,可能会存在插入中文出现乱码的情况,并且当容器删除后,容器里面存在的数据会丢失,所以在运行容器时应该使用数据卷进行挂载,按照如下步骤操作即可。

启动Docker后实现数据卷挂载,将mysql相关的运行数据同步到宿主机的指定目录

[root@localhost conf]# docker run -d -p 3307:3306 --privileged=true -v /opt/mysql/log:/var/log/mysql -v /opt/mysql/data:/var/lib/mysql -v /opt/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7
cce55233a5f2719e0d447c83df29bcd65c897a5fb9ced714cdfc7d836aa3319e

创建my.cnf文件

[root@localhost ~]#  cd /opt/mysql/conf/
[root@localhost conf]# vim my.cnf

 编辑my.cnf文件来避免乱码问题

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

由于修改了配置需要重新启动mysql容器 

[root@localhost conf]# docker restart cce55233a5f2
cce55233a5f2

 进入容器并登录mysql数据库

[root@localhost conf]# docker exec -it cce55233a5f2 /bin/bash
root@cce55233a5f2:/# mysql -u root -p
mysql> 

 查看编码集

mysql> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)

在主机上通过Navicat通过ip+3037连接MySQL数据库,创建数据库,数据表并插入数据

在/opt/mysql/data目录下进行查看,发现我们创建的数据库成功的保存到数据卷对应的挂载目录

至此Docker下MySQL安装完成

Docker下安装Redis 

 如果在Docker下直接拉取redis并运行镜像,当容器删除之后,redis容器里的数据不会被保存,所以在运行容器时应该使用数据卷进行挂载,按照如下步骤操作即可。

新建目录/opt/redis

[root@localhost data]# cd /opt
[root@localhost opt]# mkdir redis
[root@localhost opt]# cd redis
[root@localhost redis]# pwd
/opt/redis

将redis.conf文件放入/opt/redis目录下

文件链接

[root@localhost redis]# ll
总用量 64
-rw-r--r-- 1 root root 63292 12月  1 22:29 redis.conf

按照如下命令运行镜像

docker run -p 6379:6379 --name myredis --privileged=true -v /opt/app/redis/redis.conf:/etc/redis/redis.conf -v /opt/app/redis/data:/data -d redis:6.0.8 redis-server /etc/redis/redis.conf

测试客户端

[root@localhost redis]# redis-cli
127.0.0.1:6379> set key value
OK
127.0.0.1:6379> get key
"value"

至此docker下安装redis完成

Docker下安装Tomcat

搜索Tomcat镜像

[root@localhost ~]# docker search tomcat/

拉取Tomcat镜像

[root@localhost ~]# docker pull tomcat

查看拉取到的镜像

[root@localhost ~]# docker images tomcat
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
tomcat       latest    fb5657adc892   23 months ago   680MB

运行镜像

[root@localhost ~]# docker run -d -p 8080:8080 --name t1 tomcat
926dd13cd2982c8b5fecc961d1ee7206bc2645fac063d3d5896204509a813e7e

进入镜像的内部

[root@localhost ~]# docker exec -it 926dd13cd298 /bin/bash
root@926dd13cd298:/usr/local/tomcat# 

查看容器内部的文件

root@926dd13cd298:/usr/local/tomcat# ls -l
total 132
-rw-r--r-- 1 root root 18994 Dec  2  2021 BUILDING.txt
-rw-r--r-- 1 root root  6210 Dec  2  2021 CONTRIBUTING.md
-rw-r--r-- 1 root root 60269 Dec  2  2021 LICENSE
-rw-r--r-- 1 root root  2333 Dec  2  2021 NOTICE
-rw-r--r-- 1 root root  3378 Dec  2  2021 README.md
-rw-r--r-- 1 root root  6905 Dec  2  2021 RELEASE-NOTES
-rw-r--r-- 1 root root 16517 Dec  2  2021 RUNNING.txt
drwxr-xr-x 2 root root  4096 Dec 22  2021 bin
drwxr-xr-x 1 root root    22 Dec  2 03:24 conf
drwxr-xr-x 2 root root  4096 Dec 22  2021 lib
drwxrwxrwx 1 root root    80 Dec  2 03:24 logs
drwxr-xr-x 2 root root   159 Dec 22  2021 native-jni-lib
drwxrwxrwx 2 root root    30 Dec 22  2021 temp
drwxr-xr-x 2 root root     6 Dec 22  2021 webapps
drwxr-xr-x 7 root root    81 Dec  2  2021 webapps.dist
drwxrwxrwx 2 root root     6 Dec  2  2021 work

访问ip+8080

发现访问失败,查看webapps目录,发现为空,这是访问失败的原因

root@926dd13cd298:/usr/local/tomcat# cd webapps
root@926dd13cd298:/usr/local/tomcat/webapps# ls -l
total 0

查看webapps.dist目录,所需的文件在这里

root@926dd13cd298:/usr/local/tomcat/webapps# cd ..
root@926dd13cd298:/usr/local/tomcat# cd webapps.dist
root@926dd13cd298:/usr/local/tomcat/webapps.dist# ls -l
total 4
drwxr-xr-x  3 root root  223 Dec 22  2021 ROOT
drwxr-xr-x 15 root root 4096 Dec 22  2021 docs
drwxr-xr-x  7 root root   99 Dec 22  2021 examples
drwxr-xr-x  6 root root   79 Dec 22  2021 host-manager
drwxr-xr-x  6 root root  114 Dec 22  2021 manager

删除webapps目录,将webapps.dist重命名为webapps 

root@926dd13cd298:/usr/local/tomcat# rm -rf webapps
root@926dd13cd298:/usr/local/tomcat# mv webapps.dist/ webapps

 重新访问,访问成功 

至此Tomcat安装完成

免修改版Tomcat安装

拉取tomcat8镜像 

[root@localhost ~]# docker pull billygoo/tomcat8-jdk8

运行tomcat8镜像

[root@localhost ~]# docker run -d -p 8081:8080 --name mytomcat8 billygoo/tomcat8-jdk8

访问ip+8081,访问成功

至此Tomcat安装完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

「已注销」

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值