Docker 安装并部署Tomcat、Mysql8、Redis
1. 安装前检查
1 #ContOS 7安装Docker系统为64位,内核版本为3.10+
2 lsb_release -a
3
4 uname -r
5
6 #更新yum源
7 yum -y update
8
9 #查看是否已经安装Docker
10 yum list installed | grep docker
11
12 #若存在Dcoker,则移除
13 yum remove docker*
2. 安装Docker
1 #yum源安装
2 yum -y install docker
3
4 #启动、停止、重启Docker,并查询状态
5 service docker start
6 service docker stop
7 service docker restart
8 service docker status
9
10 #或者
11 systemctl start docker
12 systemctl stop docker
13 systemctl restart docker
14 systemctl status docker
15
16 #查看Docker系统信息
17 docker info
18
19 #查看Docker版本
20 docker version
21
22 #查看镜像
23 docker images
24
25 #删除镜像
26 docker rmi [IMAGE ID]/[REPOSITORY]
27
28 #列出容器
29 docker ps
30
31 #显示所有的容器,包括未运行的
32 docker ps -a
33
34 #列出最近创建的5个容器信息
35 docker ps -n 5
36
37 #删除容器
38 docker rm -f [CONTAINER ID]/[NAMES]
39
40 #查看日志
41 #-t 显示时间戳
42 #-f 跟踪显示日志
43 #--tail 末尾行数,默认全部
44 #--since 指定开始时间,如:30m "2020-05-22"
45 docker logs -t -f [CONTAINER ID]/[NAMES]
46 docker logs -t -f --tail=100 --since=30m [CONTAINER ID]/[NAMES]
47 docker logs -t -f --tail=100 --since="2020-05-22" [CONTAINER ID]/[NAMES]
48
49 #查看容器详细信息
50 docker inspect [CONTAINER ID]/[NAMES]
3. 安装Tomcat
1 #搜索Tomcat
2 docker search tomcat
3
4 #拉取镜像,拉取最新版本
5 docker pull tomcat
6
7 #拉取镜像,并指定版本
8 docker pull tomcat:8.5.4
9
10 #查看镜像
11 docker images
12
13 #运行镜像并制定宿主机端口映射(临时启动)
14 docker run -p 8080:8080 tomcat:8.5.4
15 #运行镜像并制定宿主机端口映射(后台启动)
16 #-d : 后台运行
17 docker run -d -p 8080:8080 tomcat:8.5.4
18
19 #部署项目
20 #创建本地文件夹
21 mkdir /usr/local/tomcat
22 mkdir /usr/local/tomcat/webapps
23
24 #上传项目[helloworld.war]到此路径,并运行镜像
25 #--name : 容器名称
26 #--privileged=true : 授权
27 #-p : 宿主机端口映射
28 #-v : 挂载宿主机目录
29 #-d : 后台启动
30 docker run --name=tomcat8.5.4 --privileged=true -p 8080:8080 -v /usr/local/tomcat/webapps/hellowrold.war:/usr/local/tomcat/webapps/hellowrold.war -d tomcat:8.5.4
31
32 #启动、停止容器
33 docker ps
34 docker start [CONTAINER ID]/[NAMES]
35 docker stop [CONTAINER ID]/[NAMES]
4. 安装Mysql
1 #搜索Mysql
2 docker search mysql
3
4 #拉取镜像
5 docker pull mysql
6
7 #创建容器
8 #-e : 传递环境变量
9 #MYSQL_ROOT_PASSWORD : root用户密码
10 #--lower_case_table_names=1 : 忽略表名大小写
11 docker run --name=mysql --privileged=true -p 3306:3306 -v /usr/local/src/mysql/data:/var/lib/mysql -v /usr/local/src/mysql/conf/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=3edc#EDC -d mysql --lower_case_table_names=1
12
13 #删除/usr/local/src/mysql/conf/my.cnf
14 cd /usr/local/src/mysql/conf/
15 rm -rf my.cnf/
16
17 #创建文件my.cnf
18 touch my.cnf
19
20 #编辑文件
21 vi my.cnf
22
23 #插入内容并保存
24 [client]
25 default-character-set=utf8mb4
26
27 [mysql]
28 default-character-set=utf8mb4
29
30 [mysqld]
31 pid-file = /var/run/mysqld/mysqld.pid
32 socket = /var/run/mysqld/mysqld.sock
33 datadir = /var/lib/mysql
34 secure-file-priv= NULL
35 # Disabling symbolic-links is recommended to prevent assorted security risks
36 symbolic-links=0
37 max_connections=10000
38 default-time_zone='+8:00'
39 character-set-client-handshake=FALSE
40 character_set_server=utf8mb4
41 collation-server=utf8mb4_unicode_ci
42 init_connect='SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci'
43 # Custom config should go here
44 !includedir /etc/mysql/conf.d/
45
46 #启动mysql容器
47 docker start mysql
48
49 #查询启动容器
50 docker ps
51
52 #修改root用户密码和权限
53 #交互式进入容器
54 docker exec -it mysql /bin/bash
55
56 #进入mysql,输入上边创建容器时指定的密码[3edc#EDC]
57 mysql -uroot -p
58
59 #修改root密码
60 alter user 'root'@'localhost' identified with mysql_native_password by 'new password';
61
62 #修改root权限
63 use mysql;
64 update user set host ='%' where user='root';
65 alter user 'root'@'%' identified with mysql_native_password by 'new password';
66 flush privileges;
67 quit
68
69 #退出交互
70 exit
71
72 #使用navicat远程登录
73
74 #备份数据库
75 docker exec -it mysql mysqldump -uroot -p[password] [dbname] > /tmp/[dbname].bak.sql
76
77 #还原数据库
78 docker exec -i mysql mysql -uroot -p[password] [dbname] < /tmp/[dbname].bak.sql
5. 安装Redis
1 #查询镜像
2 docker search redis
3
4 #拉取镜像
5 docker pull redis
6
7 #运行镜像
8 #--requirepass "123456" : 密码
9 #--appendonly=yes : 开启持久化
10 docker run --name=redis-server --privileged=true -p 6379:6379 -v /usr/local/redis/data:/data -d redis --requirepass="123456" --appendonly=yes
11
12 #进入Redis客户端
13 docker exec -it redis-server redis-cli
14
15 #输入密码
16 auth 123456
17
18 #测试
19 set key1 helloworld
20 get key1
Docker 安装并部署Tomcat、Mysql8、Redis的更多相关文章
- ubuntu docker安装与部署java,mysql,nginx镜像
docker 安装与部署java,mysql,nginx docker 配置 安装docker $ sudo apt-get remove docker docker-engine docker.io ...
- Docker安装mysql、nginx、redis、tomcat
拉取mysql 5.7官方镜像 docker pull mysql:5.7 启动容器 docker run --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PAS ...
- Docker部署Tomcat,Nginx,Redis应用
一.tomcat部署 1.拉取tomcat镜像 docker pull tomcat:7-jre7 2创建tomcat容器 创建容器用于部署单点登录系统(CAS) -p表示地址映射 docker r ...
- 2. Docker部署tomcat, nginx, redis,及docker私有仓库
1. 部署tomcat 1.1 下载tomcat docker pull tomcat:7-jre8 1.2 部署容器 docker run -di --name=tomcat -p 8 ...
- docker初识-docker安装、基于docker安装mysql及tomcat、基本命令
一.docker是什么 用go语言开发,开源的应用容器引擎,容器性能开销极低 二.整体架构图 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 r ...
- Docker安装与部署
安装Docker: 查看你当前的内核版本: uname -r 更新yum包: sudo yum update 卸载旧版本(如果安装过旧版本的话): sudo yum remove docker doc ...
- Docker的安装以及使用Docker安装jenkins,gogs,tomcat(一)
(1)Docker的安装 官网安装链接 :https://yeasy.gitbooks.io/docker_practice/content/ 卸载旧版本 旧版本的 Docker 称为 docker ...
- Docker安装及部署实例.Net Core
1.什么是Docker Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱 ...
- CentOS6.4虚拟机设置固定IP、安装JDK、Tomcat、Redis并部署web项目
一.CentOS设置固定IP 1.直接修改配置文件的方式,原文地址:http://www.cnblogs.com/zhja/p/3964159.html (1)首先获取你的GATEWAY 方便后面在c ...
随机推荐
- C/C++编程日记:逻辑井字棋(圈叉)(用空格初始化)
问题描述: 3*3的棋盘中,只要一条线上出现三个一样的棋子就获胜(玩家或电脑):如果棋盘已经放满还未出现三个棋子一条线则打成平手. 具体细节: 初始化棋盘(用空格初始化) //初始化棋盘 vo ...
- 【剑指offer】面试题68(补充) 0到n-1中缺失的数字(二分法的进一步应用)
题目 一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0到n-1之内. 在范围0到n-1的n个数字中有且只有一个数字不在该数组中,请找出这个数字. 输出 输入:[0,1,2, ...
- PHP+Ajax点击加载更多内容
css样式: <style type="text/css"> #more{margin:10px auto;width: 560px; border: 1px soli ...
- python学习-pickle模块(序列化)
简介 1 python-pickle模块 该pickle模块实现了用于序列化和反序列化Python对象结构的二进制协议. "Pickling"是将Python对象层次结构转换为字节 ...
- Xrepo:一个现代化的跨平台 C/C++ 包管理器
xrepo 是一个基于 Xmake 的跨平台 C/C++ 包管理器. 项目源码 官方文档 它基于 xmake 提供的运行时,但却是一个完整独立的包管理程序,相比 vcpkg/homebrew 此类包管 ...
- FL Studio里一起安装的ASIO4ALL有什么用?
在我们安装FL Studio时,正常情况下我们安装FL Studio时最多也就改改安装目录,其他的安装设置一般不会动,但看到FL安装的那些东西我们难道不会感到好奇吗?FL Studio安装包括FL S ...
- mybatis中的一些标签使用
主要有两个配置文件,一个是主配置文件SqlConfig.xml, 还有一个是dao接口实现类相对应的mapper的配置文件 .比如userDao的userDao.xml配置文件. 1.resultTy ...
- leetcode 33和 leetcode81
//感想: 1.对于这两题,我真的是做到吐,这篇博客本来是昨晚准备写的,但是对于这个第二题,我真的做到头痛,实在是太尼玛的吐血了,主要是我也是头铁,非要找到那个分界点. 2.其实之前在牛客网上做过非常 ...
- Leetcode第 217 场周赛(思维量比较大)
Leetcode第 217 场周赛 比赛链接:点这里 做完前两题我就知道今天的竞赛我已经结束了 这场比赛思维量还是比较大的. 1673. 找出最具竞争力的子序列 题目 给你一个整数数组 nums 和一 ...
- 排序--QuickSort 快排
Quick の implementation 快排,就像它的名字一定,风一样的快.基本上算是最快的排序算法了.快排的基本思想是选择一个切分的元素.把这个元素排序了.所有这个元素左边的元素都小于这个元素 ...