安装mysql 检查是否安装过mysql
如果你系统有安装,那可以选择进行卸载
1 2 rpm -e mysql # 普通删除模式 rpm -e --nodeps mysql # 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
安装mysql
1 2 3 4 5 6 7 sudo yum install wget # 使用 wget 下载 MySQL 仓库的 RPM 包 wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm # 安装下载的 RPM 包 rpm -ivh mysql-community-release-el7-5.noarch.rpm yum update yum install mysql-server
权限设置
1 chown -R mysql:mysql /var/lib/mysql/
创建并切换到 mysql 用户
1 2 3 4 // 如果已经创建跳过前两步 sudo useradd mysql sudo passwd mysql su - mysql //以mysql身份进入bash模式
初始化 MySQL
1 2 mysqld --initialize exit //退出bash模式
启动 MySQL
查看MySQL启动状态
验证 MySQL 安装
1 2 3 4 mysqladmin --version # 输出类似于: # mysqladmin Ver 8.42 Distrib 5.6.51, for Linux on x86_64 # 就是安装正常
设置root用户的密码
1 mysqladmin -u root password "123456"
登录mysql服务器
1 2 [root@host]# mysql -u root -p Enter password:*******
设置mysql的访问权限
1 2 3 4 5 6 7 8 # 设置只能从一个ip访问mysql CREATE USER 'root'@'115.195.63.179' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'115.195.63.179' WITH GRANT OPTION; FLUSH PRIVILEGES; # 设置可以从任何ip访问mysql CREATE USER 'root'@'%' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;
安装docker 卸载Docker
1 2 3 4 5 6 7 8 9 10 11 yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine \ docker-ce
安装docker
1 2 3 yum install -y yum-utils \ device-mapper-persistent-data \ lvm2 --skip-broken
更新本地镜像
1 2 3 4 5 6 7 8 # 设置docker镜像源 yum-config-manager \ --add-repo \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 修改默认镜像源 sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo # 更新 YUM 软件包缓存 yum makecache fast
安装docker
1 yum install -y docker-ce
关闭防火墙
1 2 3 4 # 关闭 systemctl stop firewalld # 禁止开机启动防火墙 systemctl disable firewalld
通过命令启动docker
1 2 3 systemctl start docker # 启动docker服务 systemctl stop docker # 停止docker服务 systemctl restart docker # 重启docker服务
输入命令,可以查看docker版本
docker安装redis 拉取官方的最新版本的镜像
1 docker pull redis:latest
使用以下命令来查看是否已安装了 redis
安装完成后,我们可以使用以下命令来运行 redis 容器
1 docker run -itd --name redis-test -p 6379:6379 redis
后端项目部署 docker部署 编写Dockerfile
1 2 3 4 5 6 7 8 9 10 11 12 # 使用官方的 Java 运行时作为父镜像 FROM openjdk:17 # 设置工作目录 WORKDIR /app # 将构建好的 JAR 文件复制到容器中 COPY ruoyi-admin.jar /app/ruoyi-admin.jar # 暴露应用的端口 EXPOSE 8080 # 定义环境变量 ENV JAVA_OPTS="" # 启动应用 ENTRYPOINT ["java", "-jar", "ruoyi-admin.jar"]
跳转到jar包目录下
1 cd /root/ruoyi-project/backend
docker部署
1 2 docker build -t myapp . docker run -d -p 7072:8080 -v /root/ruoyi-project/backend/ruoyi-admin.jar:/app/ruoyi-admin.jar --name myapp-container myapp # 运行在7072端口
docker compose部署 安装docker compose
1 sudo curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
将可执行权限应用于二进制文件
1 sudo chmod +x /usr/local/bin/docker-compose
添加docker-compose.yml文件
1 2 3 4 5 6 7 8 9 10 version: '3' services: myapp: image: myapp container_name: myapp-container ports: - "9111:9111" volumes: - /data/ruoyi-backend/ruoyi-admin.jar:/app/ruoyi-admin.jar restart: always
运行docker compose
安装nginx 前端打包项目
安装Nginx
1 2 rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm yum install -y nginx
配置前端转发
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 # 在/etc/nginx/conf.d中添加vue.conf文件 server { listen 80; server_name vue.fengsy.top; location / { root /usr/dist; index index.html index.htm; try_files $uri $uri/ /index.html; } location /prod-api/ { proxy_pass http://localhost:7072/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
问题汇总 yum镜像源的问题 如果出现下面的情况
就是yum镜像源的问题,执行下面的指令
1 2 3 4 5 6 7 # 备份原有的 yum 配置文件 sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup # 下载阿里云的 CentOS 镜像源配置文件 sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # 清理缓存并更新 yum sudo yum clean all sudo yum makecache
服务器防火墙没开,导致无法远程连接数据库 如果本地出现2002 - Can't connect to server on '193.8.173.139' (10060)
需要打开服务器的防火墙
1 2 sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent sudo firewall-cmd --reload