在腾讯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
在腾讯CentOS7.4云服务器上安装Docker,在Docker上安装配置MySQL、Tomcat和Nginx的更多相关文章
- Centos7.3云服务器上安装Nginx、MySQL、JDK、Tomcat环境
安装的软件路径建议放到/usr/local目录下 Tomcat 首先从最简单的Tomcat开始,进入到Apache的官网:http://www.apache.org,下载合适的版本来装,一般建议8.0 ...
- 使用亚马逊云服务器EC2做深度学习(四)配置好的系统镜像
这是<使用亚马逊云服务器EC2做深度学习>系列的第四篇文章. (一)申请竞价实例 (二)配置Jupyter Notebook服务器 (三)配置TensorFlow (四)配置好的系统 ...
- 使用亚马逊云服务器EC2做深度学习(三)配置TensorFlow
这是<使用亚马逊云服务器EC2做深度学习>系列的第三篇文章. (一)申请竞价实例 (二)配置Jupyter Notebook服务器 (三)配置TensorFlow (四)配置好的系统 ...
- 解决云服务器ECS,windows server 2012不能安装SQL Server 2012,不能安装.NET Fromework 3.5
在云服务器上安装SQL Server 2012 时出现“启用windows功能NetFx3时出错”的问题:NetFx3指的是.NET Framework 3.5,SQL Server 2012数据库系 ...
- 阿里云服务器(windows server 2012 r2 64位)安装MYSQL8.0.18数据库 (小白必备)
今儿中午询问了朋友关于服务器的一些事情后,就开始安装了,从中午大概一点,整到晚上九点,终于装成功了,感觉安装过程能遇到的问题全遇到了,给后面的朋友一些参考意见把. 第一次碰云服务器,措辞不当或不正确之 ...
- 阿里云服务器(Win 2008 R2 Standard)安装MSSM 2008 R2之1033和2052问题
最近在给租用的阿里云服务器安装Sql Server 2008 R2 Express时,遭遇下面的问题.经过几番折腾后,终于解决问题,完成安装,这里总结分享我的解决方法,希望能给遇到相同问题的小伙伴们节 ...
- 使用亚马逊云服务器EC2做深度学习(二)配置Jupyter Notebook服务器
这是<使用亚马逊云服务器EC2做深度学习>系列的第二篇文章. (一)申请竞价实例 (二)配置Jupyter Notebook服务器 (三)配置TensorFlow (四)配置好的系统 ...
- 阿里云服务器centos6.x升级内核以能安装docker
centos版本为6.9,因为需要安装docker,所以需要将内核升级 升级步骤: 先导入公钥: rpm --import https://www.elrepo.org/RPM-GPG-KEY-elr ...
- CentOS7阿里云服务器,python程序requests无法正常post网站(报502)
问题描述: 使用jenkins构建接口自动化测试时,发现新增加的接口case不能访问通,会报502错误(本地可以跑通,在测试服就会502)解决的思路: 缩小调试范围(去掉jenkins db环境,将问 ...
随机推荐
- 学习 Git Rebase
有问题为什么不问问神奇的 man 呢? rebase 也算是我比较常用的一个指令了,但是很长时间以来,对这个指令的认识还是不够深刻,于是就找了个时间认真地读了一下 git rebase 的文档.这份文 ...
- jdk安装配置(不适合新人,个人随笔)
jdk下载:https://www.oracle.com/technetwork/java/javase/downloads/index.html 按个人喜好下载相应版本,一般比最新的低一个版本 下载 ...
- ES-PHP向ES批量添加、查询文档报 No alive nodes found in your cluster
转自: https://blog.csdn.net/itfootball/article/details/53637238 问题描述为了提高保存数据到es消耗的时间,采取积攒到3000条文档的时候才保 ...
- springmvc 拦截器流程图
- 单选 textarea 赋初值
自闭合标签赋初值用$().val(),比如:<input type="text" name="text" value="123"> ...
- Python之路【第二十七篇】:web服务器django
Django 一.web框架 框架,即时framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单的说,就是用别人搭建好的舞台来表演你的才艺 ...
- Python之路【第十七篇】:Python并发编程|协程
一.协程 协程,又叫微线程,纤程.英文名Coroutine.协程本质上就是一个线程 优点1:协程极高的执行效率.因为子程序切换不是线程切换,而是由程序自身控制,因此,没有线程切换的开销,和多线程比,线 ...
- 【数据结构】7.java源码关于LinkedList
关于LinkedList的源码关注点 1.从底层数据结构,扩容策略2.LinkedList的增删改查3.特殊处理重点关注4.遍历的速度,随机访问和iterator访问效率对比 1.从底层数据结构,扩容 ...
- 【LEETCODE】62、数组分类,hard级别,题目:42、128
package y2019.Algorithm.array.medium; /** * @ProjectName: cutter-point * @Package: y2019.Algorithm.a ...
- 九校联考-DL24凉心模拟Day2总结
T1 锻造 forging 题目描述 "欢迎啊,老朋友." 一阵寒暄过后,厂长带他们参观了厂子四周,并给他们讲锻造的流程. "我们这里的武器分成若干的等级,等级越高武器就 ...