项目部署(Docker+Mysql+Nginx)

项目部署(Docker+Mysql+Nginx)

  • 服务器
    • 远程链接
  • 在服务器配置JAVA环境
  • 配置Docker
    • Docker镜像加速
    • Docker指令
  • 安装Mysql
    • 启动mysql
    • 进入Mysql
  • 安装Oracle
  • 安装redis
  • 安装Postgresql
  • 安装nginx
    • 启动nginx

服务器

按需求购买,之后打开工作台,会有一个实例。进入实例
项目部署(Docker+Mysql+Nginx)_第1张图片
进入安全组
项目部署(Docker+Mysql+Nginx)_第2张图片
选择手动或自动打开端口
项目部署(Docker+Mysql+Nginx)_第3张图片
项目部署(Docker+Mysql+Nginx)_第4张图片
项目部署(Docker+Mysql+Nginx)_第5张图片

远程链接

重置服务器密码
项目部署(Docker+Mysql+Nginx)_第6张图片
使用finalshell/xshell链接
项目部署(Docker+Mysql+Nginx)_第7张图片

在服务器配置JAVA环境

jdk下载链接:https://download.oracle.com/java/18/latest/jdk-18_linux-aarch64_bin.tar.gz
网址:https://www.oracle.com/java/technologies/downloads/#java8
上传下载好的jdk到服务器
在这里插入图片描述
解压

cd /home
tar -zxvf  jdk-18_linux-x64_bin.tar.gz

移动到usr/local目录下(Linux软件目录)

mv jdk-18.0.2.1/ /usr/local/jdk18

配置profile(添加环境变量)

vim /etc/profile

在profile加上配置信息
项目部署(Docker+Mysql+Nginx)_第8张图片

export JAVA_HOME=/usr/local/jdk1.8
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin

重启配置文件

source /ect/profile

查看是否安装完成

java -version

在这里插入图片描述

配置Docker

卸载旧版本

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

使用 Docker 仓库进行安装
设置仓库

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

选择阿里云源地址

$ sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装最新版本的 Docker Engine-Community 和 containerd

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

启动 Docker

sudo systemctl start docker

查看Docker版本

docker version

开机自动

systemctl enable docker

Docker镜像加速

阿里云镜像获取地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
登入后直接复制,配置daemon.json文件即可
项目部署(Docker+Mysql+Nginx)_第9张图片

Docker指令

查看镜像

docker images

下载镜像

docker pull mysql:5.7

启动镜像

docker run -it --name jdk1.8 -d java:latest /bin/bash

容器操作指令

# 查看容器:
docker ps -l
# 停止容器:
docker stop [容器id]
# 启动容器:
docker start [容器id]
# 删除容器:
docker rm [容器id]
# 进入容器:
docker attach [容器id]
# 删除镜像:
docker rmi [镜像id]
docker rmi [镜像名称]:[tag]

# 存入文件到容器
docker cp 源文件路径 [容器id/名]: 存放路径

安装Mysql

docker pull mysql:5.7

启动mysql

# 一般启动
docker run -p 3308:3306 --name mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

# 挂载目录启动
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

参数解释:
–name 容器名字
-p 3308:3306 物理机端口:容器内部端口
-e 运行参数 初始化 root 用户的密码
-d 后台运行 mysq5.7 镜像名字加标签

-v 目录挂载,-v /mydata/mysql/log:/var/log/mysql 表示将 docker里面mysql容器的/var/log/mysql目录挂载到宿主linux系统的 /mydata/mysql/log 目录下,方便查看。

进入Mysql

项目部署(Docker+Mysql+Nginx)_第10张图片

// 进入mysql容器:
docker exec -it 1255685b9d8e /bin/bash
// 登录mysql:
mysql -uroot -proot
// 修改权限:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
或者:ALTER USER 'root'@'%' IDENTIFIED BY '123456';
flush privileges;

mysql配置文件: vim /mydata/mysql/conf/my.cnf

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_ connection = utf8_ unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

安装Oracle

# 安装oracle
https://hub.docker.com/r/oracleinanutshell/oracle-xe-11g

docker pull oracleinanutshell/oracle-xe-11g

# 运行镜像  -p: 是容器内部端口绑定到指定的主机端口
docker run --name oracle -d -p 1521:1521 -e ORACLE_ALLOW_REMOTE=true oracleinanutshell/oracle-xe-11g

# 进入容器
docker exec -it 容器id  /bin/bash

# 连接 oracle
su oracle
cd $ORACLE_HOME
bin/sqlplus / as sysdba
# 创建账号
create user qingxi identified by 123456;
grant connect,resource to qingxi;

# 修改密码
alter user 用户名 identified by 新密码;

# 删除用户
drop user 用户名;

安装redis

# 安装redis
docker pull redis

# 启动
# 创建配置文件
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf

docker run -p 6379:6379 --name redis \
-v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

# redis-cli控制台:
docker exec -it redis redis-cli

# redis开启持久化,修改配置文件redis.conf,启动aof持久化,输入:
appendonly yes

# docker启动mysqsl、redis自动启动:
docker update mysql --restart=always
docker update redis --restart=always

安装Postgresql

# 拉取镜像
docker pull postgres

# 启动镜像
docker run -d -p 5432:5432 -e POSTGRES_PASSWORD=pass123 postgres

# 进入容器
docker exec -it 容器id  /bin/bash

# 连接pg
psql -U postgres -h 127.0.0.1 -p 5432

安装nginx

# 安装依赖
yum -y install make zlib-devel gcc-c++ libtool openssl openssl-devel
# 进入local文件安装
cd /usr/local
# 使用wget下载
wget http://nginx.org/download/nginx-1.18.0.tar.gz
# 解压
tar -zxvf nginx-1.18.0.tar.gz
# 删除压缩包
rm -rf nginx-1.18.0.tar.g
# 打开nginx
cd nginx-1.18.0
# 配置
./configure --prefix=/usr/local/nginx
# 安装
make && make install
# 移除安装包
rm -rf nginx-1.18.0/

启动nginx

# 打开nginx的sbin文件夹
cd usr/local/nginx/sbin/
# 运行nginx
./nginx 
# 查看进程
ps -ef | grep nginx
# 使用服务器ip在浏览器访问
# 更改配置使用自己的vue界面
# 打开nginx.conf配置文件
vim /usr/local/nginx/conf/nginx.conf
# 找到location / 修改以下内容
 location / {
            root   /home/server/dist;	# vue项目的dist文件夹文职
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;	# 刷新页面返回当前路由
        }
# 重启nginx
/usr/local/nginx/sbin/nginx -s reload

你可能感兴趣的:(学习笔记,nginx,mysql,docker)