Skip to main content

安装部署

让我们来尝试安装一下Antenna 本文阅读大概需要 5 minutes左右.

前提准备#

你需要有

1、一台公网服务器

2、最少一个域名,最好已做好NS记录配置

关于文章中需要的域名解析及DNS配置 ,可参考博客域名配置教程 域名配置及阿里云dns服务修改教程

3、你需要访问Antenna的github地址 来自 https://github.com/wuba/Antenna. 并将项目下载到服务器上

注意:如后续部署方法选择源码部署,由于项目用到supervisor,相关初始配置默认项目安装路径为系统根目录 **/**如果想自定义下载路径后续需修改配置文件antenna.ini,docker部署可忽略本注意
git clone https://github.com/wuba/Antenna /

4、填写配置

进入项目目录,首先你需要修改 .env.example文件,按照你的实际情况进行配置

#MYSQL配置MYSQL_HOST=127.0.0.1MYSQL_PORT=3306MYSQL_USERNAME=rootMYSQL_PASSWORD=Antenna@58.com
#平台配置PLATFORM_DOMAIN=test.com # 平台域名SERVER_IP=1.1.1.1  # 平台公网IPLOGIN_PATH='aaa'   # 隐藏后台uri,如果设置成aaa,则后台地址为http://test.com/aaaPLATFORM_ROOT_USER=antenna@58.com  # 初始登录用户PLATFORM_ROOT_PASSWORD=antenna@58.com  # 初始账户密码REGISTER_TYPE=0  #平台注册配置 0代表不开放注册,1代表邀请码注册,2代表开放注册,但需要正确填写邮箱配置信息,不然用户无法收到消息
#邮件配置EMAIL_HOST=1.1.1.1 # SMTP服务器地址EMAIL_PORT=465 # SMTP服务器端口EMAIL_HOST_USER=58@qq.com # SMTP账户EMAIL_HOST_PASSWORD=123456 # SMTP密码/授权码
#消息配置SAVE_MESSAGE_SEVEN_DAYS = 1 #保存近七天的消息记录,0代表关闭配置,1代表开启配置OPEN_EMAIL=0 #代表平台接收到消息开启邮件通知 1开启邮箱通知 0代表关闭邮箱消息通知,注意如若开启邮箱通知,需正确填写邮箱配置信息,不然用户无法收到消息
#DNS解析记录#DNSLOG解析的域名,可与平台域名共用DNS_DOMAIN=test.cn   # 初始解析记录DNS_DOMAIN_IP=127.0.0.1
# 前后端分离部署SERVER_URL=http://test.cn

将文件配置好后改名为 .env

cp .env.example .env

源码部署(Centos 7 系统)#

安装supervisor 所需相关依赖

chmod +x ./bin/install.sh./bin/install.sh

检查supervisor配置文件

conf/antenna.ini文件内容 注意,如果你下载项目的地址不是根目录 需要将ini文件 directory的值修改为自己项目的绝对路径

例如我的Antenna项目所在系统的绝对路径是/opt/Antenna,那么我要把ini文件中所有的directory的值 都替换为/opt/Antenna

[program:antenna-server]directory = /Antennacommand = python3 manage.py runserver 0.0.0.0:80autostart = trueautorestart = trueredirect_stderr = truestderr_logfile = /tmp/antenna_server_stderr.logstdout_logfile = /tmp/antenna_server_stdout.logstopsignal = KILLstopasgroup = true
[program:antenna-dns]directory = /Antennacommand = python3 modules/template/depend/listen/dnslog.pyautostart = trueautorestart = trueredirect_stderr = truestderr_logfile = /tmp/antenna_dns_stderr.logstdout_logfile = /tmp/antenna_dns_stdout.logstopsignal = KILLstopasgroup = true
[program:antenna-jndi]directory = /Antennacommand = python3 modules/template/depend/listen/jndi.pyautostart = trueautorestart = trueredirect_stderr = truestderr_logfile = /tmp/antenna_jndi_stderr.logstdout_logfile = /tmp/antenna_jndi_stdout.logstopsignal = KILLstopasgroup = true
[program:antenna-ftp]directory = /Antennacommand = python3 modules/template/depend/listen/ftplog.pyautostart = trueautorestart = trueredirect_stderr = truestderr_logfile = /tmp/antenna_ftp_stderr.logstdout_logfile = /tmp/antenna_ftp_stdout.logstopsignal = KILLstopasgroup = true
[program:antenna-https]directory = /Antennacommand = python3 modules/template/depend/listen/httpslog.pyautostart = trueautorestart = trueredirect_stderr = truestderr_logfile = /tmp/antenna_https_stderr.logstdout_logfile = /tmp/antenna_https_stdout.logstopsignal = KILLstopasgroup = true

启动服务

chmod +x ./bin/run.sh./bin/run.sh

tips:运行命令同步初始数据,注意连接的数据库需提前创建好空数据库antenna,编码需设置为utf-8

此时执行 启动后可用个人设置的初始登录用户名以及密码(默认为antenna@58.com) http://test.com/{LOGIN_PATH}, 可访问系统后台

Docker 部署#

修改 docker-compose.yml文件中配置

version: '3'
services:  db:    privileged: true    image: mysql:8.0.30    container_name: antenna-mysql    ports:      - "3306:3306"    environment:      MYSQL_ROOT_PASSWORD: Antenna@58.com      MYSQL_DATABASE: antenna      TZ: Asia/Shanghai    networks:      - antenna    restart: always
  antenna:    image: jihongjun/antenna:latest    depends_on:      - db    container_name: antenna    ports:      - "21:21"      - "80:80"      - "2345:2345"      - "53:53/udp"      - "443:443"    networks:      - antenna    environment:      # MYSQL配置,需保证与上述数据库一致      MYSQL_HOST: db      MYSQL_PORT: 3306      MYSQL_USERNAME: root      MYSQL_PASSWORD: Antenna@58.com      # 平台配置      # 平台域名      PLATFORM_DOMAIN: 58antenna.cn      # 平台公网IP      SERVER_IP: 1.1.1.1      # 隐藏后台uri,如果设置成aaa,则后台地址为http://test.com/aaa      LOGIN_PATH: 'aaa'      # 初始登录用户      PLATFORM_ROOT_USER: antenna@58.com      # 初始账户密码      PLATFORM_ROOT_PASSWORD: antenna@58.com      # 平台注册配置 0代表不开放注册,1代表邀请码注册,2代表开放注册,但需要正确填写邮箱配置信息,不然用户无法收到消息      REGISTER_TYPE: 0      # 邮件配置      # SMTP服务器地址      EMAIL_HOST: 1.1.1.1      # SMTP服务器端口      EMAIL_PORT: 465      # SMTP账户      EMAIL_HOST_USER: antenna@58.com      # SMTP密码/授权码      EMAIL_HOST_PASSWORD: 123456      # 消息配置      # 保存近七天的消息记录,0代表关闭配置,1代表开启配置      SAVE_MESSAGE_SEVEN_DAYS: 1      # 代表平台接收到消息开启邮件通知 1开启邮箱通知 0代表关闭邮箱消息通知,注意如若开启邮箱通知,需正确填写邮箱配置信息,不然用户无法收到消息      OPEN_EMAIL: 0      # DNS解析记录      DNS_DOMAIN: test.cn      # 初始解析记录      DNS_DOMAIN_IP: 127.0.0.1      # 前后端分离部署      SERVER_URL: http://test.cn    restart: always
networks:  antenna:    driver: bridge

配置好后运行命令

docker-compose up -d 

启动后可用个人设置的初始登录用户名以及密码(默认为antenna@58.com) http://test.com/{LOGIN_PATH}, 可访问系统后台

tips:部署前保证映射端口都未被占用,关于53端口关闭可运行命令

systemctl stop systemd-resolved

如果镜像部署中提示端口开启没有权限,请将docker中关于antenna的镜像增加配置privileged: true