Skip to content

Commit 352441b

Browse files
committed
add Dockerfile
1 parent 49f1df5 commit 352441b

File tree

5 files changed

+86
-22
lines changed

5 files changed

+86
-22
lines changed

Dockerfile

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
FROM centos:7
2+
3+
RUN yum install java-1.8.0-openjdk* -y
4+
5+
RUN yum install wget -y
6+
7+
RUN wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
8+
RUN yum -y install apache-maven
9+
10+
RUN mkdir /bridge
11+
COPY . /bridge
12+
13+
WORKDIR /bridge
14+
15+
RUN yum install which -y
16+
17+
RUN export JAVA_HOME=$(dirname $(dirname $(readlink $(readlink $(which javac)))))
18+
19+
RUN mvn clean package -DskipTes

README.md

Lines changed: 42 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -16,52 +16,79 @@
1616
* 数据查询API
1717

1818

19-
部署方法
19+
部署方法(支持手动部署和Docker部署)
2020
-----------
2121

22+
### 1. 手动部署
23+
2224
#### 域名解析
2325

24-
假设根域名是dnslog.com,服务器IP是10.10.10.10进行以下配置
26+
假设根域名是dnslog.com,服务器IP是10.10.10.10进行以下配置
2527

2628
配置A记录,子域名ns,解析到10.10.10.10
2729

2830
配置NS记录,子域名dns,解析到ns.dnslog.com
2931

3032
配置A记录,子域名dnslog,解析到10.10.10.10
3133

32-
dnslog.dnslog.com 用于访问平台web
34+
dnslog.dnslog.com 用于访问平台web
3335

34-
dns.dnslog.com 作为测试时payload中设置的域名,每个用户对应dns.dnslog.com下的子域名,如1.dns.dnslog.com,登录平台后可以在API信息中看到对应的地址
36+
dns.dnslog.com 作为测试时payload中设置的域名,每个用户对应dns.dnslog.com下的子域名,如1.dns.dnslog.com,登录平台后可以在API信息中看到对应的地址
3537

36-
子域名随意设置,对应上即可
38+
子域名随意设置,对应上即可
3739

3840
#### 数据库配置
3941

40-
登录mysql执行以下命令
42+
登录mysql执行以下命令,bridge.sql在程序的根目录下
4143

4244
source bridge.sql
43-
44-
bridge.sql在程序的根目录下
4545

4646
#### 服务器配置
4747

48-
环境:Java 1.8
48+
环境:Java 1.8、Maven
4949

50-
修改resources目录下application.properties文件中的web服务端口(默认80端口)和数据库连接信息
50+
修改resources目录下application.properties文件中的web服务端口(默认80端口)和数据库连接信息
5151

5252
mvn clean package -DskipTests
5353

54-
maven生成的jar包位置在target目录下,如dns_log-0.0.1-SNAPSHOT.jar
54+
maven生成的jar包位置在target目录下,如dns_log-0.0.1-SNAPSHOT.jar
5555

5656
java -jar dns_log-0.0.1-SNAPSHOT.jar dns.dnslog.com dnslog.dnslog.com 10.10.10.10 a1b2c3d4
5757

58-
第一个参数指定payload设置对应的子域名
58+
第一个参数指定payload设置对应的子域名
59+
60+
第二个参数指定访问平台对应的子域名
61+
62+
第三个参数服务器的IP地址
5963

60-
第二个参数指定访问平台对应的子域名
64+
第四个参数设置注册时的注册暗号,注册需要填写该字段
65+
66+
67+
### 2. Docker部署
68+
69+
域名解析部分与手动部署相同,无需配置数据库和服务器
70+
71+
git clone https://github.com/SPuerBRead/Bridge.git
72+
cd ./Bridge
73+
74+
默认的mysql密码是password,若要修改,请保持以下两项中的密码相同(可不修改)
75+
76+
1. docker-compose.yml文件中的MYSQL_ROOT_PASSWORD项
6177

62-
第三个参数服务器的IP地址
78+
2. 程序配置文件application.properties中的spring.datasource.password
79+
80+
修改docker-compose.yml倒数第三行command的值,此处为启动命令,将对应参数替换成域名配置中的信息,如:
81+
82+
java -jar dns_log-0.0.1-SNAPSHOT.jar dns.dnslog.com dnslog.dnslog.com 10.10.10.10 a1b2c3d4
83+
84+
参数含义见手动部署部分。
85+
86+
配置完成后执行以下命令:
87+
88+
docker-compose build
89+
docker-compose up -d
6390

64-
第四个参数设置注册时的注册暗号,注册需要填写该字段
91+
访问 dnslog.dnslog.com(实际域名根据根域名和配置而定)即可看到登录界面。
6592

6693

6794
部分截图

docker-compose.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
version: '2'
2+
services:
3+
mysql:
4+
container_name: mysql
5+
environment:
6+
MYSQL_ROOT_PASSWORD: password
7+
image: mysql:5.7
8+
command: --default-authentication-plugin=mysql_native_password
9+
restart: always
10+
volumes:
11+
- db_data:/var/lib/mysql
12+
- ./bridge.sql:/docker-entrypoint-initdb.d/bridge.sql:ro
13+
bridge:
14+
build: .
15+
ports:
16+
- 80:80
17+
depends_on:
18+
- mysql
19+
links:
20+
- mysql
21+
command: nohup java -jar /bridge/target/bridge-1.0-SNAPSHOT.jar dns.dnslog.com dnslog.dnslog.com 10.10.10.10 a1b2c3d4 &
22+
volumes:
23+
db_data: {}

pom.xml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<groupId>mysql</groupId>
3333
<artifactId>mysql-connector-java</artifactId>
3434
</dependency>
35-
<dependency>
36-
<groupId>org.springframework.boot</groupId>
37-
<artifactId>spring-boot-starter-test</artifactId>
38-
<scope>test</scope>
39-
</dependency>
4035
<!-- https://mvnrepository.com/artifact/io.netty/netty-all -->
4136
<dependency>
4237
<groupId>io.netty</groupId>
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
spring.datasource.url=jdbc:mysql://localhost:3306/bridge?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=true
2-
spring.datasource.username=username
1+
spring.datasource.url=jdbc:mysql://mysql:3306/bridge?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=true
2+
spring.datasource.username=root
33
spring.datasource.password=password
44
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
55
server.port=80

0 commit comments

Comments
 (0)