安装nginx

  1. 安装nginx:
sudo apt install nginx
  1. 启动nginx服务:
sudo systemctl start nginx
  1. 验证nginx是否已成功启动:
sudo systemctl status nginx

如果一切正常,你应该看到nginx正在运行的信息。

  1. 设置nginx开机自启动(可选):
sudo systemctl enable nginx

若出现报错无法重启:
在这里插入图片描述

  1. 查找占用80端口的进程 sudo ss -tulnp | grep ‘:80’

输出示例: LISTEN 0 128 0.0.0.0:80 0.0.0.0:* users:((“apache2”,pid=1234,fd=4))

  1. 终止Apache服务(假设冲突进程是Apache)
    sudo systemctl stop apache2

再次重启即可

若是 Apache(httpd):

sudo systemctl stop httpd 2>/dev/null
sudo systemctl stop apache2 2>/dev/null
sudo systemctl disable httpd apache2 2>/dev/null

仍占用则:

sudo pkill -9 httpd
sudo pkill -9 apache2
若是已有 nginx(重复启动或残留):

sudo systemctl stop nginx
sudo pkill -9 nginx

安装redis

  1. 安装Redis:
sudo apt install redis-server
  1. 检查Redis服务状态:
sudo systemctl status redis-server

这将显示Redis是否已成功启动。

  1. 验证Redis是否正常工作:

默认情况下,安装完成后Redis服务会自动启动。你可以通过运行以下命令连接到Redis服务并进行简单的测试:

redis-cli ping

如果返回 PONG,表示Redis已经安装并且运行正常。

  1. 配置Redis(可选):

默认安装的Redis通常已经配置为在本地监听,默认端口为6379。如果需要进行更高级的配置或更改监听地址等设置,请编辑Redis配置文件:

sudo vim /etc/redis/redis.conf

完成更改后,重新启动Redis服务使配置生效:

sudo systemctl restart redis-server

安装RabbitMQ

  1. 安装Erlang依赖(RabbitMQ依赖于Erlang):
sudo apt install -y erlang
  1. 添加 RabbitMQ 软件源:
echo "deb https://dl.bintray.com/rabbitmq/debian testing main" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
  1. 添加 RabbitMQ 的 GPG 密钥:
wget -O- https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc | sudo apt-key add -
  1. 安装RabbitMQ
sudo apt install -y rabbitmq-server
  1. 安装RabbitMQ界面插件(不安装就无法启动15672端口,无法访问web界面)
sudo rabbitmq-plugins enable rabbitmq_management
  1. 配置rabbitmq.conf设置端口(rabbitmq.conf需要自己手动创建,默认是没有的)
vim /etc/rabbitmq/rabbitmq.conf

复制以下内容

listeners.tcp.default = 0.0.0.0:5672
listeners.tcp.default = 0.0.0.0:15672
listeners.tcp.default = 5672

在这里插入图片描述

  1. 配置rabbitmq-env.conf设置端口
vim /etc/rabbitmq/rabbitmq-env.conf

复制以下内容

NODE_PORT=5672
listeners.tcp.default = 0.0.0.0:5672
listeners.tcp.default = 0.0.0.0:15672

在这里插入图片描述

  1. 开放15672端口
sudo ufw allow 15672/tcp
  1. 开放5672端口
sudo ufw allow 5672/tcp
  1. 生效配置端口
sudo ufw reload
  1. 启动RabbitMQ
sudo systemctl start rabbitmq-server

访问地址:公网ip:15672

默认账号密码都是guest,但是会提示User can only log in via localhost

在这里插入图片描述
我们需要自己创建一个账号即可

  1. 新增登录用户
sudo rabbitmqctl add_user 你的账号 你的密码
  1. 开放资源的访问权限
sudo rabbitmqctl set_permissions -p / 你的账号 ".*" ".*" ".*"
  1. 赋予管理权限
sudo rabbitmqctl set_user_tags 你的账号 administrator
  1. 重启RabbitMQ
sudo systemctl restart rabbitmq-server

登录你的新账号、新密码即可生效

在这里插入图片描述

安装postgresql

  1. 安装PostgreSQL:
sudo apt install postgresql
  1. 检查PostgreSQL服务状态:
sudo systemctl status postgresql
  1. 登录到PostgreSQL:

默认情况下,PostgreSQL安装时会创建一个名为 postgres 的系统用户,并且在该用户下创建一个默认数据库。可以使用以下命令以 postgres 用户身份登录到PostgreSQL:

sudo -u postgres psql

或者,如果你当前的Linux用户有sudo权限,你也可以使用以下命令登录:

sudo -i -u postgres
psql

这将启动PostgreSQL的交互式终端 (psql),允许你执行SQL命令和管理数据库。

  1. 退出PostgreSQL:

在 psql 命令行下,可以使用以下命令退出:

\q

这将显示PostgreSQL是否已成功启动。

安装postgis扩展

要在Ubuntu上安装PostGIS,你需要首先安装PostgreSQL,然后再安装PostGIS扩展。

  1. 安装PostGIS及相关依赖:

sudo apt install postgis postgresql-13-postgis-3

这里假设你正在使用的是 PostgreSQL 13 版本。如果你使用的是其他版本,比如 PostgreSQL 12 或 14,可以相应地替换 postgresql-12-postgis-3 或 postgresql-14-postgis-3 。

  1. 启用PostGIS扩展:

一旦安装了PostGIS包,你需要在你的PostgreSQL数据库中启用PostGIS扩展。首先,使用以下命令登录到PostgreSQL:

sudo -u postgres psql

或者,如果你当前的Linux用户有sudo权限,你可以使用以下命令登录:

sudo -i -u postgres
psql

然后,在 psql 命令行中执行以下命令来为你的数据库启用PostGIS扩展:

CREATE EXTENSION postgis;

如果需要,你还可以启用其他PostGIS相关扩展,例如:

CREATE EXTENSION postgis_topology;

配置公网连接服务器Postgresql

在执行下面的操作前请慎重,因为服务器可能会被注入病毒,因为我就遇到了。。如下图所示

在这里插入图片描述
参考 https://www.cnblogs.com/yury757/p/16069701.html

在这里插入图片描述
确认PostgreSQL配置文件(通常是 postgresql.conf)中 listen_addresses 参数允许远程连接。你可以通过编辑这个文件并重启PostgreSQL服务来实现:

sudo vim /etc/postgresql/<version>/main/postgresql.conf

在postgresql.conf中找到 listen_addresses 行并将其设置为:

listen_addresses = '*'

编辑PostgreSQL的 pg_hba.conf 文件

sudo vim /etc/postgresql/<version>/main/pg_hba.conf

允许所有IP都能连接到你的PostgreSQL数据库,可以在 pg_hba.conf 文件中设置如下规则:

host    all             all             0.0.0.0/0               md5

然后我们把5432端口开放出去

开放 SSH 服务的端口 5432:

sudo ufw allow 5432/tcp

应用了新的防火墙规则:

sudo ufw reload

并且在阿里云上面配置好5432规则

在这里插入图片描述

配置完之后去连接,如果出现

在这里插入图片描述
配置postgresql密码

直接回车

sudo -u postgres psql

配置密码为postgres

ALTER USER postgres PASSWORD 'postgres';

回车即可

在这里插入图片描述

再去连接就可以连上了

在这里插入图片描述

安装minio

  1. 下载MinIO服务器

首先,从MinIO的官方网站下载最新的MinIO服务器程序。可以使用 wget 命令来下载:

wget https://dl.min.io/server/minio/release/linux-amd64/minio

或者使用 curl:

curl -o minio https://dl.min.io/server/minio/release/linux-amd64/minio
  1. 赋予执行权限

下载完成后,需要为MinIO可执行文件添加执行权限:

chmod +x minio
  1. 启动MinIO

使用以下命令启动MinIO服务器。这里假设你将MinIO数据存储在 /data 目录下,并且使用默认的端口9000:

./minio server /miniodata

如果出现下面报错,意味着没有权限写入,给miniodata加下写入权限就好了

在这里插入图片描述

如果需要使用其他端口,可以在命令行参数中指定,例如:

./minio server --address=:8080 /miniodata
  1. 后台运行MinIO
nohup ./minio server /miniodata > minio.log &
  1. 访问MinIO控制台

MinIO服务器启动后,你可以通过浏览器访问MinIO控制台。默认情况下,可以使用 http://localhost:9000 访问控制台。在首次访问时,你需要设置管理员账号和密码。

  1. Minio创建桶
  • 安装 mc 命令行工具

首先,确保你已经安装了 mc 命令行工具。如果还没有安装,可以按照以下步骤安装:

wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
./mc --help   # 确认安装成功
  • 配置 mc 命令行工具

在使用 mc 前,需要配置 mc 以连接到你的 MinIO 服务器。假设你的 MinIO 服务器在 http://localhost:9000,执行以下命令进行配置:
ACCESS_KEY为默认账号:minioadmin
SECRET_KEY为默认密码:minioadmin

./mc alias set myminio http://localhost:9000 ACCESS_KEY SECRET_KEY

其中:

myminio 是自定义的别名,你可以根据实际情况设置。
http://localhost:9000 是你的 MinIO 服务器地址。
ACCESS_KEY 和 SECRET_KEY 是你的 MinIO 服务器的访问密钥。

  • 创建存储桶

使用以下命令创建一个存储桶:
mybucket为桶名称

./mc mb mybucket

配置公网访问Ubuntu中的Minio

开放 SSH 服务的端口 9000:

sudo ufw allow 9000/tcp

应用了新的防火墙规则:

sudo ufw reload

在这里插入图片描述

如果你是阿里云的服务器,请在防火墙中配置好规则

在这里插入图片描述

就可以访问了

在这里插入图片描述
如果访问不了,记得开放 SSH 服务的端口 33291:

sudo ufw allow 33291/tcp

应用了新的防火墙规则:

sudo ufw reload

minio配置阿里云的ssl证书,使用https访问

nginx和apache任选一个都可以,建议nginx的

在这里插入图片描述

放到这个路径下

在这里插入图片描述


如果启动之前发现minio正在启动先执行

ps aux | grep minio

输出类似:

root     12345  0.0  0.1 123456 7890 ?        Sl   10:00   0:01 ./minio server --address :9000 ...

终止minio进程

kill -9 12345  # 替换为你的 PID

执行后台启动命令

nohup ./minio server --address ":9000" --certs-dir /root/.minio/certs/ /miniodata > minio.log 2>&1 &

这样子 就能正常https访问了

使用:https://你的域名:9000 访问

解决在java项目中上传图片时出现的报错sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

  1. 将MinIO证书导入Java信任库
# 登录宝塔终端,执行以下命令:

# 从MinIO服务器导出证书(替换为你的MinIO地址)
openssl s_client -connect feituplan.com:9000 -showcerts </dev/null 2>/dev/null | \
openssl x509 -outform PEM > /www/server/java/minio.crt

# 找到Java安装路径(宝塔默认路径)
JAVA_HOME=/www/server/java/jdk1.8.0_371  # 根据实际版本调整

# 导入证书到Java默认信任库
keytool -importcert \
    -alias minio \
    -file /www/server/java/minio.crt \
    -keystore $JAVA_HOME/jre/lib/security/cacerts \
    -storepass changeit  # 默认密码
    
#执行后会出现以下命令输入yes信任即可
Trust this certificate? [no]:  yes

在这里插入图片描述

添加到系统信任库

# Ubuntu/Debian
sudo cp minio.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates

# CentOS/RHEL
sudo cp minio.crt /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust
  1. 重启Java项目​

重启完java项目即可完成https信任

解决使用腾讯云数据万象审核Minio图片时无法访问

如果你用的是apache的会出现以下问题:

在这里插入图片描述

已经配置了ssl证书,但是腾讯云那边下载访问始终都是404,找了几天客服也终于是解决了。。。。。首先把证书.crt上传,进入下面这个网址去修复。

修复地址:https://myssl.com/chain_download.html

在这里插入图片描述

修复完成后,复制下来,把原来的.pem备份一下,然后把复制的内容放到.crt文件中

在这里插入图片描述
nginx使用.crt的文件

在这里插入图片描述
重启nginx

重启完nginx后,把修复好的.crt文件拉到minio中,并重命名成public.crt

在这里插入图片描述
重启minio

在这里插入图片描述

如果用的是ngxin只需要把.pem改成crt即可

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐