feat: 添加docker-compose.
This commit is contained in:
parent
fd0661dd8d
commit
3f3db768e7
4
.gitignore
vendored
4
.gitignore
vendored
@ -6,4 +6,6 @@ temp/
|
||||
vendor
|
||||
tmp/
|
||||
config/settings.dev.yml
|
||||
logs
|
||||
logs
|
||||
mysql/data
|
||||
redis/data
|
@ -10,8 +10,5 @@ ENV GOPROXY="https://goproxy.cn"
|
||||
|
||||
RUN go mod download
|
||||
RUN go build -o ferry .
|
||||
RUN ./ferry init -c=/opt/ferry/config/settings.yml
|
||||
|
||||
EXPOSE 8002
|
||||
|
||||
CMD ["./ferry server -c=/opt/ferry/config/settings.yml"]
|
||||
EXPOSE 8002
|
55
docker-compose.yml
Normal file
55
docker-compose.yml
Normal file
@ -0,0 +1,55 @@
|
||||
version: "3"
|
||||
services:
|
||||
ferry:
|
||||
image: registry.cn-beijing.aliyuncs.com/lanyulei/ferry:v1.0.0
|
||||
container_name: ferry
|
||||
depends_on:
|
||||
- db
|
||||
- redis
|
||||
links:
|
||||
- db:ferry_mysql
|
||||
- redis:ferry_redis
|
||||
ports:
|
||||
- 8002:8002
|
||||
volumes:
|
||||
- ./config:/opt/ferry/config
|
||||
- ./static:/opt/ferry/static
|
||||
- ./template:/opt/ferry/template
|
||||
- ./logs:/opt/ferry/logs
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
restart: always
|
||||
command: ./ferry server -c=/opt/ferry/config/settings.yml
|
||||
|
||||
db:
|
||||
hostname: mysql
|
||||
container_name: ferry_mysql
|
||||
image: mysql:5.7.31
|
||||
restart: always
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
- MYSQL_ROOT_PASSWORD=123456
|
||||
volumes:
|
||||
- ./docker/mysql/data:/var/lib/mysql/data # 映射数据库保存目录到宿主机,防止数据丢失
|
||||
- ./docker/mysql/config/my.cnf:/etc/mysql/my.cnf # 映射数据库配置文件
|
||||
- ./docker/mysql/init_sql:/docker-entrypoint-initdb.d
|
||||
ports:
|
||||
- 13306:3306
|
||||
command: [
|
||||
'--character-set-server=utf8mb4',
|
||||
'--collation-server=utf8mb4_unicode_ci'
|
||||
]
|
||||
|
||||
redis:
|
||||
hostname: redis
|
||||
image: redis:5.0.4
|
||||
container_name: ferry_redis
|
||||
restart: always
|
||||
command: redis-server /etc/redis.conf # 启动redis命令
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
volumes:
|
||||
- ./redis/data:/var/lib/redis/data
|
||||
- ./redis/config/redis.conf:/etc/redis.conf
|
||||
ports:
|
||||
- 16379:6379
|
36
docker/mysql/config/my.cnf
Normal file
36
docker/mysql/config/my.cnf
Normal file
@ -0,0 +1,36 @@
|
||||
[client]
|
||||
port = 3306
|
||||
socket = /var/lib/mysql/data/mysql.sock
|
||||
[mysqld]
|
||||
# 针对5.7版本执行group by字句出错问题解决
|
||||
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
|
||||
# 一般配置选项
|
||||
basedir = /var/lib/mysql
|
||||
datadir = /var/lib/mysql/data
|
||||
port = 3306
|
||||
socket = /var/lib/mysql/data/mysql.sock
|
||||
lc-messages-dir = /usr/share/mysql # 务必配置此项,否则执行sql出错时,只能显示错误代码而不显示具体错误消息
|
||||
character-set-server=utf8
|
||||
back_log = 300
|
||||
max_connections = 3000
|
||||
max_connect_errors = 50
|
||||
table_open_cache = 4096
|
||||
max_allowed_packet = 32M
|
||||
#binlog_cache_size = 4M
|
||||
max_heap_table_size = 128M
|
||||
read_rnd_buffer_size = 16M
|
||||
sort_buffer_size = 16M
|
||||
join_buffer_size = 16M
|
||||
thread_cache_size = 16
|
||||
query_cache_size = 64M
|
||||
query_cache_limit = 4M
|
||||
ft_min_word_len = 8
|
||||
thread_stack = 512K
|
||||
transaction_isolation = REPEATABLE-READ
|
||||
tmp_table_size = 64M
|
||||
#log-bin=mysql-bin
|
||||
long_query_time = 6
|
||||
server_id=1
|
||||
innodb_buffer_pool_size = 256M
|
||||
innodb_thread_concurrency = 16
|
||||
innodb_log_buffer_size = 16M
|
1
docker/mysql/init_sql/init.sql
Normal file
1
docker/mysql/init_sql/init.sql
Normal file
@ -0,0 +1 @@
|
||||
create database if not exists ferry;
|
1373
docker/redis/config/redis.conf
Normal file
1373
docker/redis/config/redis.conf
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user