在腾讯CentOS7.4云服务器上安装Docker,在Docker上安装配置MySQL、Tomcat和Nginx

提示:以下是在腾讯CentOS7.4云服务器上操作。

Docker的基本操作:https://www.cnblogs.com/opsprobe/p/10963098.html

一、安装Docker

# 使用yum命令在线安装

yum install docker

# 安装后查看Docker版本

docker -v

# 启动与停止Docker

systemctl命令是系统服务管理器指令,它是 service 和 chkconfig 两个命令组合。

启动docker:systemctl start docker

停止docker:systemctl stop docker

重启docker:systemctl restart docker

查看docker状态:systemctl status docker

加入开机启动:systemctl enable docker

查看docker概要信息:docker info

查看docker帮助文档:docker --help

二、部署应用

1、MySQL部署

# 拉取MySQL镜像

docker pull mysql

# 查看镜像

docker images

# 创建MySQL容器

docker run -di --name my-mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

-p:代表端口映射,格式为  宿主机映射端口:容器运行端口

-e:代表添加环境变量  MYSQL_ROOT_PASSWORD是root用户的登录密码

进入MySQL容器,登陆MySQL

# 进入mysql容器

命令 docker exec -it container_name (或者 container_id)  /bin/bash

docker exec -it my-mysql /bin/bash

注意:这里用的是登录守护式容器方式,用 exit 命令退出时,容器不会停止,docker ps -a 命令查看后台运行。

# 登录mysql,密码为创建容器时设置的123456

mysql -u root -p

远程登录MySQL

在自己的电脑上用Navicat软件连接云服务器的Docker容器,这里主机名或IP地址处填写云服务器的IP,端口填写映射端口33306

连接时出现以下错误提示:1251 - Client does not support authtication protocol requested by server;consider upgrading MySQL client

解决方法参考自:https://blog.csdn.net/uniquewonderq/article/details/89646327

root是用户名,'%' 是指任何IP地址,mysql_native_password是旧的密码验证机制, by '123456'中的 '123456' 是密码,最后别忘了分号;

查看容器IP地址

我们可以通过以下命令查看容器运行的各种数据

docker inspect my-mysql

执行下面的命令输出容器IP地址

docker inspect --format='{{.NetworkSettings.IPAddress}}' my-mysql

运行效果如下:

我们可以看到数据库服务器的IP是172.17.0.2

2、Tomcat部署

拉取tomcat镜像

docker pull tomcat:8-jre8

创建tomcat容器

docker run -di --name=my-tomcat -p 9000:8080 -v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps --privileged=true tomcat:8-jre8

参数说明:

-p:表示地址映射

-v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。

--privileged=true:表示将扩展权限授予此容器

测试:

在宿主主机 /usr/local/tomcat/webapps/ 目录下,新建目录test,在test目录下新建一个index.html命名的HTML文件,然后保存退出。

进入到容器查看,可看到webapps目录下有test目录:

在浏览器地址栏输入,服务器IP地址:9000/test/index.html,即可访问到如下界面。

3、Nginx部署

# 拉取Nginx镜像

docker pull nginx

创建Nginx容器

docker run -di --name=my-nginx -p 8585:80 nginx

在浏览器地址栏输入,服务器IP地址:8585

posted @ 2019-06-02 23:53  OpsDrip  阅读(1750)  评论(0编辑  收藏  举报