Docker部署常见应用(MySQL、Tomcat、Nginx、Redis、Centos)

================================================================

前提须知:

(1)搜索镜像命令

格式:docker search 镜像名

(2)设置Docker镜像加速器

详见文章:Docker设置ustc的镜像源(镜像加速器)

================================================================


1、部署MySQL

(1)拉取镜像(这里拉取mysql5.7版本

[root@localhost ~]# docker pull mysql:5.7

(2)创建容器(默认运行)

[root@localhost ~]# docker run -di --name=my_mysql -p 33060:3306 -e MYSQL_ROOT_PASSWORD=1234 mysql:5.7

-p:代表端口映射,格式为:宿主机映射端口:容器运行端口,映射容器服务的 3306 端口到宿主机的 33060 端口,外部主机可以直接通过 宿主机ip:33060 访问到 MySQL 的服务。
-e:代表添加环境变量,MYSQL_ROOT_PASSWORD=1234 为MySQL 服务 root 用户的密码。

在这里插入图片描述


(3)暂时关闭防火墙(可跳过)

[root@localhost ~]# systemctl stop firewalld

重启防火墙命令:service iptables restart


(4)远程登录mysql(连接宿主机的IP,指定端口为33060

①mysql客户端连接

mysql -h192.168.116.161 -P33060 -uroot -p

在这里插入图片描述


②Novicat客工具连接
在这里插入图片描述


2、部署Tomcat

特别提醒:

小虎测试: 从官网pull下来的tomcat8.0,部署maven项目war包时,提示“Unsupported major.minor version 52.0”,即不支持jdk8,重新pull下来的tomcat9.0正常运行该项目(故暂时建议安装tomcat9.0)。

(1)拉取镜像(这里拉取tomcat8.0版本

[root@localhost ~]# docker pull tomcat:8.0

(2)查看所有镜像

[root@localhost ~]# docker images

在这里插入图片描述


(3)创建tomcat容器

[root@localhost ~]# docker run -di --name=my_tomcat -p 8081:8080 -v /usr/local/webapps:/usr/local/tomcat/webapps tomcat:8.0

注: 如果创建失败,请重启docker服务再试:systemctl restart docker

-p:8081:8080:将主机的 8081 端口映射到容器的 8080 端口。
-v:挂载目录。这里将宿主机目录/usr/local/webapps 挂载(映射)到 容器目录/usr/local/tomcat/webapps(如果没有,目录会自动创建) 。

查看容器启动情况,如果没有启动则启动tomcat:

[root@localhost ~]# docker ps -a
[root@localhost ~]# docker start my_tomcat
my_tomcat
[root@localhost ~]# 

(4)上传项目war包

此时在webapps没有任何文件,我们需要上传我们的war包到宿主系统目录:/usr/local/webapps

这里我们上传开源项目war包:cas.war

百度网盘项目地址
链接:https://pan.baidu.com/s/1co2Xpw-yNVwq6i87VR_tcQ
提取码:r465

【注】:这里需要等待一会,等待war包自动解压(或访问时会自动解压)。


(5)暂时关闭防火墙(可跳过

[root@localhost ~]# systemctl stop firewalld

重启防火墙命令:service iptables restart


(6)访问项目

访问地址:http://192.168.116.161:8081/cas/login

在这里插入图片描述


3、部署Nginx

(1)拉取镜像

[root@localhost webapps]# docker pull nginx:1.16

(2)查看所有镜像

[root@localhost ~]# docker images

在这里插入图片描述


(3)创建Nginx容器

[root@localhost webapps]# docker run -di --name=my_nginx -p 81:80 nginx:1.16
4925395ef0eb0e3b52f9c8dc212f1793c8437caff93efb1d401b83c088b61238
[root@localhost webapps]# 
[root@localhost webapps]# 
[root@localhost webapps]# 
[root@localhost webapps]# docker ps -a

-p :81:80,映射容器服务的 80端口到宿主机的 81 端口。外部可以直接通过宿主机ip:81访问到 nginx的服务。


(4)暂时关闭防火墙(可跳过)

[root@localhost ~]# systemctl stop firewalld

重启防火墙命令:service iptables restart


(5)访问nginx

访问地址:http://192.168.116.161:81

在这里插入图片描述


(6)配置文件地址 及 相关说明

登录my_redis 容器:

[root@localhost webapps]# docker exec -it my_nginx /bin/bash
root@4925395ef0eb:/# dir
bin  boot  dev	etc  home  lib	lib64  media  mnt  opt	proc  root  run  sbin  srv  sys  tmp  usr  var
root@4925395ef0eb:/# 

我们查看my_nginx容器内默认配置文件:/etc/nginx/nginx.conf
,发现其中include命令:include /etc/nginx/conf.d/*.conf;,进入该目录,发现有一个默认的配置文件/etc/nginx/conf.d/default.conf,default.conf 内的静态文件目录配置如下:

location / {
    root   /usr/share/nginx/html;
    index  index.html index.htm;
}

进入静态文件目录,找到了默认静态文件:

root@4925395ef0eb:/etc/nginx/conf.d# cd /usr/share/nginx/html
root@4925395ef0eb:/usr/share/nginx/html# dir
50x.html  index.html
root@4925395ef0eb:/usr/share/nginx/html#

4、部署Redis

(1)拉取镜像

[root@localhost webapps]# docker pull redis:5

(2)查看所有镜像

[root@localhost ~]# docker images

在这里插入图片描述


(3)创建redis容器(默认启动)

[root@localhost webapps]# docker run -itd --name=my_redis -p 63790:6379 redis:5

-p:63790:6379:映射容器服务的 6379 端口到宿主机的 63790 端口。外部可以直接通过宿主机ip:63790 访问到 Redis 的服务。


(4)暂时关闭防火墙(可跳过

[root@localhost ~]# systemctl stop firewalld

重启防火墙命令:service iptables restart


(5)连接redis

①redis-cli 连接使用测试

[root@localhost webapps]# docker exec -it my_redis /bin/bash
root@ad95adf3a459:/data# redis-cli
127.0.0.1:6379> set name zhangsan
OK
127.0.0.1:6379> get name
"zhangsan"
127.0.0.1:6379> quit
root@ad95adf3a459:/data# exit
exit
[root@localhost webapps]# 


②RedisDesktopManager工具连接测试

在这里插入图片描述


4、部署Centos

(1)拉取镜像

[root@localhost ~]# docker pull centos:7

**(2)查看所有镜像**
```bash
[root@localhost ~]# docker images

在这里插入图片描述


(3)创建centos容器(默认启动)

[root@localhost webapps]# docker run -itd --name=my_centos centos:7

[root@localhost webapps]# docker ps

在这里插入图片描述


(4)登录my_centos容器:

[root@localhost webapps]# docker exec -it my_centos /bin/bash
[root@ebc363fd0265 /]# 
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,这是一个比较复杂的问题,我尽量简要地回答。 1. Docker部署: a. 安装Docker的依赖:yum install -y yum-utils device-mapper-persistent-data lvm2 b. 添加Docker的yum源:yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo c. 安装Docker:yum install docker-ce d. 启动Docker:systemctl start docker e. 设置Docker开机自启动:systemctl enable docker 2. Mysql部署: a. 安装Mysql的依赖:yum install -y wget b. 下载Mysql的yum源:wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm c. 安装Mysql的yum源:yum localinstall -y mysql80-community-release-el7-3.noarch.rpm d. 安装Mysql:yum install -y mysql-community-server e. 启动Mysql:systemctl start mysqld f. 查看Mysql的初始密码:grep 'temporary password' /var/log/mysqld.log g. 登录Mysqlmysql -u root -p h. 修改Mysql的密码:ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_password'; 3. Elasticsearch的部署: a. 安装Elasticsearch的依赖:yum install -y java-1.8.0-openjdk b. 下载Elasticsearch:wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.1-linux-x86_64.tar.gz c. 解压Elasticsearch:tar -zxvf elasticsearch-7.10.1-linux-x86_64.tar.gz d. 进入Elasticsearch目录:cd elasticsearch-7.10.1/ e. 启动Elasticsearch:./bin/elasticsearch 4. Redis部署: a. 安装Redis的依赖:yum install -y gcc make b. 下载Redis:wget http://download.redis.io/releases/redis-6.0.9.tar.gz c. 解压Redis:tar -zxvf redis-6.0.9.tar.gz d. 进入Redis目录:cd redis-6.0.9/ e. 编译Redis:make f. 启动Redis:./src/redis-server 5. Nginx部署: a. 安装Nginx的依赖:yum install -y gcc pcre-devel openssl-devel b. 下载Nginx:wget http://nginx.org/download/nginx-1.18.0.tar.gz c. 解压Nginx:tar -zxvf nginx-1.18.0.tar.gz d. 进入Nginx目录:cd nginx-1.18.0/ e. 编译Nginx:./configure --prefix=/usr/local/nginx --with-http_ssl_module f. 安装Nginx:make && make install g. 启动Nginx:/usr/local/nginx/sbin/nginx 6. Kafka的部署: a. 安装Kafka的依赖:yum install -y java-1.8.0-openjdk b. 下载Kafka:wget https://dlcdn.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz c. 解压Kafka:tar -zxvf kafka_2.13-3.0.0.tgz d. 进入Kafka目录:cd kafka_2.13-3.0.0/ e. 启动Zookeeper:bin/zookeeper-server-start.sh config/zookeeper.properties f. 启动Kafka:bin/kafka-server-start.sh config/server.properties 以上是大致的步骤,具体的细节可能会有所不同,还请您根据实际情况进行调整。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值