Linux+Docker部署项目


目录

  • Linux+Docker部署项目
  • 1.虚拟机安装
  • 1.1.创建新的虚拟机
  • 1.2.选择自定义(高级)
  • 1.3.选择虚拟机硬件兼容性
  • 1.4.安装客户机操作系统
  • 1.5.选择操作系统
  • 1.6.配置安装位置
  • 1.7.设置虚拟机处理器配置
  • 1.8.设置虚拟机内存
  • 1.9.设置网络类型
  • 1.10.选择I/O控制器类型,默认就好
  • 1.11.选择磁盘类型,默认
  • 1.12.选择磁盘
  • 1.13.指定磁盘大小
  • 1.14.指定磁盘文件
  • 1.15.核对配置,单击完成
  • 1.16.编辑虚拟机设置
  • 1.17.开启虚拟机
  • 1.18.开始安装,选择后等待安装
  • 1.19.选择语言
  • 1.20.配置安装信息
  • 1.21.设置root密码
  • 1.22.点击重启
  • 1.23.登录系统
  • 1.24.配置网卡
  • 1.24.1.使用vi编辑ifcfg-ens33
  • 1.24.2.重启网络服务
  • 2.安装MobaXterm软件
  • 2.1.解压压缩包
  • 2.2.绿色软件,双击MobaXterm.exe即可运行
  • 3.使用MobaXterm连接虚拟机
  • 3.1.点击session
  • 3.2.选择SSH
  • 3.3.填入ip地址, 点击下方的OK
  • 3.4.输入用户名和密码连接服务器
  • 3.5.连接成功,示例
  • 4.切换为国内源
  • 4.1.备份原有的源
  • 4.2.查看是否备份完成
  • 4.3.生成阿里源
  • 4.4.清空缓存
  • 4.5.重新生成缓存
  • 5.生成快照
  • 5.1.点击管理快照
  • 5.2.点击拍摄快照
  • 5.3.填入必要信息点击拍摄快照
  • 5.4.等待左下角保存完成
  • 6.JDK及tomcat安装
  • 6.1.使用MobaXterm上传文件
  • 6.2.解压文件
  • 6.3.配置环境变量
  • 6.4.进入tomcat安装目录
  • 6.5.防火墙设置
  • 7.Docker的安装
  • 7.1.查看系统内核版本
  • 7.2.更新yum包
  • 7.3.卸载旧版本(如果安装过旧版本的话)
  • 7.4.安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
  • 7.5.设置yum源
  • 7.6.安装最新版本的Docker
  • 7.7.启动Docker并设置开机启动
  • 7.8.验证Docker
  • 7.9.配置阿里云镜像源
  • 7.9.1登录进入阿里云镜像服务中心,获取镜像地址
  • 7.9.2.在/etc/docker目录下找到在daemon.json文件(没有就新建),将下面内容写入
  • 7.9.3.重启daemon
  • 7.9.4.重启docker服务
  • 8.使用docker搭建mysql环境
  • 9.发布项目
  • 9.1.数据库的创建
  • 9.1.1.使用navicat连接数据库
  • 9.1.2.创建数据库
  • 9.1.3.执行sql文件, 建表
  • 9.2.上传war包到tomcat的webapps路径下
  • 9.3.重启tomcat服务器
  • 9.4.访问ip:8080/oapro/


1.虚拟机安装

1.1.创建新的虚拟机

好玩的docker部署项目 docker部署项目的两种方式_java

1.2.选择自定义(高级)

好玩的docker部署项目 docker部署项目的两种方式_java_02

1.3.选择虚拟机硬件兼容性

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_03

1.4.安装客户机操作系统

选择稍后安装

好玩的docker部署项目 docker部署项目的两种方式_服务器_04

1.5.选择操作系统

好玩的docker部署项目 docker部署项目的两种方式_服务器_05

1.6.配置安装位置

好玩的docker部署项目 docker部署项目的两种方式_linux_06

1.7.设置虚拟机处理器配置

好玩的docker部署项目 docker部署项目的两种方式_java_07

1.8.设置虚拟机内存

根据需要自行设置

好玩的docker部署项目 docker部署项目的两种方式_java_08

1.9.设置网络类型

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_09

1.10.选择I/O控制器类型,默认就好

好玩的docker部署项目 docker部署项目的两种方式_java_10

1.11.选择磁盘类型,默认

好玩的docker部署项目 docker部署项目的两种方式_服务器_11

1.12.选择磁盘

好玩的docker部署项目 docker部署项目的两种方式_java_12

1.13.指定磁盘大小

好玩的docker部署项目 docker部署项目的两种方式_linux_13

1.14.指定磁盘文件

好玩的docker部署项目 docker部署项目的两种方式_java_14

1.15.核对配置,单击完成

好玩的docker部署项目 docker部署项目的两种方式_java_15

1.16.编辑虚拟机设置

好玩的docker部署项目 docker部署项目的两种方式_java_16

1.17.开启虚拟机

好玩的docker部署项目 docker部署项目的两种方式_docker_17

1.18.开始安装,选择后等待安装

好玩的docker部署项目 docker部署项目的两种方式_docker_18

1.19.选择语言

1.20.配置安装信息

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_19

好玩的docker部署项目 docker部署项目的两种方式_服务器_20

好玩的docker部署项目 docker部署项目的两种方式_docker_21

1.21.设置root密码

好玩的docker部署项目 docker部署项目的两种方式_docker_22

1.22.点击重启

好玩的docker部署项目 docker部署项目的两种方式_docker_23

1.23.登录系统

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_24

PS:输入密码的时候不会提示, 实际上已经输入了

出现红框中所示表示登录成功

好玩的docker部署项目 docker部署项目的两种方式_docker_25

1.24.配置网卡

输入ifconfig, 出现如红框所示表示没有ip地址

好玩的docker部署项目 docker部署项目的两种方式_docker_26

注:
新版的CentOS7开始对网卡的编号有一套规则,网卡的代号与网卡的类型有关:

  1. eno1: 代表由主板bios内置的网卡
  2. ens1:代表由主板bios内置的PCI-E网卡
  3. enp2s0: PCI-E独立网卡
  4. eth0: 如果以上都不使用,则返回默认的网卡
    ens33则属于第二种类型,即说明你的网卡是内置的PCI-E网卡

lo:全称loopback,是回环地址,经常被分配到127.0.0.1地址上,用于本机通信,经过内核处理后直接返回,不会在任何网络中出现
link/ether: MAC地址,硬件地址,全球唯一
网络设备状态标识:<BROADCAST,MULTICAST,UP,LOWER_UP>
UP: 网卡处于启动状态
BROADCAST: 网卡有广播地址,可以发生广播包
MULTICAST: 网卡发送多播包
LOWER_UP: L1是启动的,即网线是插着的。

1.24.1.使用vi编辑ifcfg-ens33
  • cd /etc/sysconfig/network-scripts
  • 输入命令: vi ifcfg-ens33,进入编辑界面
  • 点击insert键,进入插入模式, 此时鼠标不可用,使用上下左右按键移动鼠标
  • 将ONBOOT值改为yes
  • ESC键退出插入模式
  • :wq 表示保存并退出,如果退出不保存则输入 :q!

好玩的docker部署项目 docker部署项目的两种方式_服务器_27

注:
ONBOOT:指明在系统启动时是否激活网卡,只有在激活状态的网卡才能连接网络进行网络通讯
DEVICE:网卡名称
BOOTPROTO=none 表示使用什么样的路由协议,如果值为none/static表示使用的是静态路由,那么接下来必须填写IPADDR(ip地址)、NETMASK(子网掩码)、GATEWAY(网关)、DNS1这几选项,如果是dhcp表示使用的是动态路由,上面提到的几项可以不填,由DHCP服务自动分配,如果填写了则以你填写的为准。
HWADDR:你网卡的物理地址,可以不写,系统自动生成

1.24.2.重启网络服务
service network restart

再次输入ifconfig

好玩的docker部署项目 docker部署项目的两种方式_java_28

此时已经有ip地址了

2.安装MobaXterm软件

有其他远程连接工具可以不用安装

2.1.解压压缩包

好玩的docker部署项目 docker部署项目的两种方式_docker_29

2.2.绿色软件,双击MobaXterm.exe即可运行

好玩的docker部署项目 docker部署项目的两种方式_java_30

好玩的docker部署项目 docker部署项目的两种方式_docker_31

3.使用MobaXterm连接虚拟机

3.1.点击session

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_32

3.2.选择SSH

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_33

3.3.填入ip地址, 点击下方的OK

好玩的docker部署项目 docker部署项目的两种方式_java_34

3.4.输入用户名和密码连接服务器

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_35

3.5.连接成功,示例

好玩的docker部署项目 docker部署项目的两种方式_java_36

4.切换为国内源

4.1.备份原有的源

cp /etc/yum.repos.d/CentOS-Base.repo  /etc/yum.repos.d/CentOS-Base.repo.bak

ps: cp是copy的缩写,表示复制文件

4.2.查看是否备份完成

cd /etc/yum.repos.d
ll

好玩的docker部署项目 docker部署项目的两种方式_docker_37

4.3.生成阿里源

wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

PS:

wget 非交互式的网络文件下载工具
用法: wget [选项]… [url]…
-o --output 后接文件名,将信息写入指定的文件
-a --append-output 后接文件名,将信息添加到指定的文件
-d --debug 打印调试信息
-q --quiet 安静模式
-F --force-html 把输入文件当成html文件

-t --tries=num 设置重试的次数
-nc --no-clobber 不要重复下载已存在的文件

出现问题

好玩的docker部署项目 docker部署项目的两种方式_服务器_38

输入

yum install wget

好玩的docker部署项目 docker部署项目的两种方式_java_39

好玩的docker部署项目 docker部署项目的两种方式_docker_40

再次执行最初的命令

好玩的docker部署项目 docker部署项目的两种方式_java_41

4.4.清空缓存

yum clean all

好玩的docker部署项目 docker部署项目的两种方式_docker_42

4.5.重新生成缓存

yum makecache

好玩的docker部署项目 docker部署项目的两种方式_java_43

5.生成快照

5.1.点击管理快照

好玩的docker部署项目 docker部署项目的两种方式_java_44

5.2.点击拍摄快照

好玩的docker部署项目 docker部署项目的两种方式_服务器_45

5.3.填入必要信息点击拍摄快照

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_46

5.4.等待左下角保存完成

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_47

6.JDK及tomcat安装

6.1.使用MobaXterm上传文件

好玩的docker部署项目 docker部署项目的两种方式_服务器_48

好玩的docker部署项目 docker部署项目的两种方式_java_49

**PS: **

注:
tar包属于打包文件,Unix和类Unix系统上的压缩打包工具,可以将多个文件打包为一个文件,文件后缀为tar
tar.gz包是压缩文件,经过gzip压缩后的tar文件,形成tar.gz包,扩展名为tar.gz
两种文件的用途不同,tar.gz一般情况下是源代码安装包,需要先解压再经过编译、安装才能执行。tar包最初设计目的是将文件备份到磁带上(tape archive),因此得名,一般用于文件备份。

6.2.解压文件

#注意要进入上传的文件夹
tar -zxvf apache-tomcat-8.5.20.tar.gz
tar -zxvf jdk-8u151-linux-x64.tar.gz

参数说明:
z:指明压缩文件为gzip压缩
x:表示执行解压,如果使用c参数则表示压缩
v:显示详细的处理过程
f:要操作的文件名
-C:解压到指定目录,如:tar -zxf abc.tar.gz -C /root 将abc.tar.gz解压到root目录去。

自己安装的jdk适合安装在哪里?
自己安装的软件一般会放在/usr/local下,该目录与windows中的C:\Program Files类似。
其他常用目录结构:
/usr:系统级目录,类似于c:/windows
/usr/lib: 系统级目录,类型与c:/windows/system32
/opt: 用户级目录,可以近似的理解为d:/software,opt为可选的意思,一般用来安装第三方软件,或者是一些服务程序的安装

解压好后的样子


好玩的docker部署项目 docker部署项目的两种方式_服务器_50

蓝色的是文件夹

红色的是压缩包

6.3.配置环境变量

进入刚才解压文件夹路径

输入pwd查看文件夹全路径

好玩的docker部署项目 docker部署项目的两种方式_docker_51

#配置环境变量
vim /etc/profile

#出现错误 -bash: vim: 未找到命令
#执行
yum install vim

# 按insert进入插入模式, 粘贴一下内容, 按esc退出, 输入:wq退出
#java environment
export JAVA_HOME=/zjzaki/jdk1.8.0_151
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

#设置环境变量生效
source /etc/profile

6.4.进入tomcat安装目录

#进入解压的tomcat目录
cd apache-tomcat-8.5.20
#进入bin目录
cd bin
#查看文件目录
ll
#启动tomcat
./startup.sh

好玩的docker部署项目 docker部署项目的两种方式_linux_52

访问一下IP:8080

好玩的docker部署项目 docker部署项目的两种方式_docker_53

此时是没又开放防火墙端口,接着往下面走

6.5.防火墙设置

此处开放3306和8080端口, 3306后面需要使用(公网服务器不建议打开)

#开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#跟新防火墙规则
firewall-cmd --reload
#防火墙列表
firewall-cmd --zone=public --list-ports
#防火墙状态
systemctl status firewalld
#启动防火墙
systemctl start firewalld
#关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_54

此时在访问ip:8080

好玩的docker部署项目 docker部署项目的两种方式_linux_55

成功访问tomcat服务器

7.Docker的安装

7.1.查看系统内核版本

Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。

#通过 uname -r 命令查看你当前的内核版本
uname -r

好玩的docker部署项目 docker部署项目的两种方式_linux_56

7.2.更新yum包

#使用 root 权限登录 Centos。确保 yum 包更新到最新。
yum update

好玩的docker部署项目 docker部署项目的两种方式_docker_57

7.3.卸载旧版本(如果安装过旧版本的话)

yum remove docker  docker-common docker-selinux docker-engine

7.4.安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

yum install -y yum-utils device-mapper-persistent-data lvm2

7.5.设置yum源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

好玩的docker部署项目 docker部署项目的两种方式_服务器_58

7.6.安装最新版本的Docker

yum install -y -y docker-ce docker-ce-cli containerd.io

7.7.启动Docker并设置开机启动

systemctl start docker
systemctl enable docker

7.8.验证Docker

docker version

好玩的docker部署项目 docker部署项目的两种方式_docker_59

7.9.配置阿里云镜像源

7.9.1登录进入阿里云镜像服务中心,获取镜像地址

进入阿里云容器镜像服务地址:

https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_60

7.9.2.在/etc/docker目录下找到在daemon.json文件(没有就新建),将下面内容写入

{

“registry-mirrors”: [“https://xxxxxxx.mirror.aliyuncs.com”]

}

vim /etc/docker/daemon.json

按insert进入插入模式,写入内容
写入完成后, 按esc, 最后输入:wq 保存并退出

7.9.3.重启daemon

systemctl daemon-reload

7.9.4.重启docker服务

systemctl restart docker

8.使用docker搭建mysql环境

#拉取镜像
docker pull mysql:5.7

#启动镜像
docker run -p 3306:3306 --name mysql1   -di -v /home/zjzaki/data/mysql/mysql.conf.d/:/etc/mysql/mysql.conf.d/ -v /home/zjzaki/data/mysql/data/:/var/lib/mysql -v /home/zjzaki/data/mysql/log/:/var/log -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

9.发布项目

9.1.数据库的创建

9.1.1.使用navicat连接数据库

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_61

单击测试连接,出现以下弹窗表示连接成功

好玩的docker部署项目 docker部署项目的两种方式_linux_62

9.1.2.创建数据库

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_63

9.1.3.执行sql文件, 建表

9.2.上传war包到tomcat的webapps路径下

好玩的docker部署项目 docker部署项目的两种方式_服务器_64

9.3.重启tomcat服务器

#进入tomcat的bin目录!!!
cd /zjzaki/apache-tomcat-8.5.20/bin
#关闭tomcat服务器
./shutdown.sh
#启动tomcat服务器
./startup.sh

9.4.访问ip:8080/oapro/

好玩的docker部署项目 docker部署项目的两种方式_linux_65

输入账号: admin 密码: 123456

好玩的docker部署项目 docker部署项目的两种方式_好玩的docker部署项目_66