Added docker files for the bot and the database
This commit is contained in:
parent
2fb6fbe6a3
commit
fd94cb317f
10
.dockerignore
Normal file
10
.dockerignore
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
**/target/
|
||||||
|
**/.vscode/
|
||||||
|
**/.env
|
||||||
|
**/.git/
|
||||||
|
**/.dockerignore
|
||||||
|
**/Dockerfile
|
||||||
|
**/compose.yaml
|
||||||
|
**/LICENSE
|
||||||
|
**/README.md
|
||||||
|
database/
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -2,3 +2,4 @@ target/
|
|||||||
.env
|
.env
|
||||||
migration/target/
|
migration/target/
|
||||||
entity/target/
|
entity/target/
|
||||||
|
database/data
|
||||||
|
11
Dockerfile
Normal file
11
Dockerfile
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
FROM docker.io/rust:alpine as builder
|
||||||
|
WORKDIR /build/pass_manager
|
||||||
|
RUN apk -U upgrade --no-cache && apk add --no-cache musl-dev
|
||||||
|
COPY . .
|
||||||
|
RUN cargo install --path .
|
||||||
|
|
||||||
|
FROM docker.io/alpine
|
||||||
|
WORKDIR /app/
|
||||||
|
RUN apk -U upgrade --no-cache
|
||||||
|
COPY --from=builder /usr/local/cargo/bin/pass_manager .
|
||||||
|
CMD ["./pass_manager"]
|
30
compose.yaml
Executable file
30
compose.yaml
Executable file
@ -0,0 +1,30 @@
|
|||||||
|
version: '3.4'
|
||||||
|
networks:
|
||||||
|
password_manager: {}
|
||||||
|
|
||||||
|
services:
|
||||||
|
passmanager:
|
||||||
|
build: .
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
TOKEN: ${TOKEN}
|
||||||
|
DATABASE_URL: 'mysql://manager:passwd123!@db/passmanager'
|
||||||
|
depends_on:
|
||||||
|
- db
|
||||||
|
networks:
|
||||||
|
- password_manager
|
||||||
|
|
||||||
|
db:
|
||||||
|
build:
|
||||||
|
context: ./database/
|
||||||
|
dockerfile: ./Dockerfile
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
MYSQL_ROOT_PASSWORD: example123!
|
||||||
|
MYSQL_DATABASE: passmanager
|
||||||
|
MYSQL_USER: manager
|
||||||
|
MYSQL_PASSWORD: passwd123!
|
||||||
|
volumes:
|
||||||
|
- ./database/data:/var/lib/mysql
|
||||||
|
networks:
|
||||||
|
- password_manager
|
3
database/Dockerfile
Executable file
3
database/Dockerfile
Executable file
@ -0,0 +1,3 @@
|
|||||||
|
FROM docker.io/mariadb
|
||||||
|
|
||||||
|
COPY mariadb.cnf /etc/mysql/mariadb.cnf
|
38
database/mariadb.cnf
Executable file
38
database/mariadb.cnf
Executable file
@ -0,0 +1,38 @@
|
|||||||
|
# The MariaDB configuration file
|
||||||
|
#
|
||||||
|
# The MariaDB/MySQL tools read configuration files in the following order:
|
||||||
|
# 0. "/etc/mysql/my.cnf" symlinks to this file, reason why all the rest is read.
|
||||||
|
# 1. "/etc/mysql/mariadb.cnf" (this file) to set global defaults,
|
||||||
|
# 2. "/etc/mysql/conf.d/*.cnf" to set global options.
|
||||||
|
# 3. "/etc/mysql/mariadb.conf.d/*.cnf" to set MariaDB-only options.
|
||||||
|
# 4. "~/.my.cnf" to set user-specific options.
|
||||||
|
#
|
||||||
|
# If the same option is defined multiple times, the last one will apply.
|
||||||
|
#
|
||||||
|
# One can use all long options that the program supports.
|
||||||
|
# Run program with --help to get a list of available options and with
|
||||||
|
# --print-defaults to see which it would actually understand and use.
|
||||||
|
#
|
||||||
|
# If you are new to MariaDB, check out https://mariadb.com/kb/en/basic-mariadb-articles/
|
||||||
|
|
||||||
|
#
|
||||||
|
# This group is read both by the client and the server
|
||||||
|
# use it for options that affect everything
|
||||||
|
#
|
||||||
|
[client-server]
|
||||||
|
# Port or socket location where to connect
|
||||||
|
# port = 3306
|
||||||
|
socket = /run/mysqld/mysqld.sock
|
||||||
|
|
||||||
|
# Import all .cnf files from configuration directory
|
||||||
|
[mariadbd]
|
||||||
|
skip-host-cache
|
||||||
|
skip-name-resolve
|
||||||
|
|
||||||
|
[mysqld]
|
||||||
|
skip-innodb
|
||||||
|
default-storage-engine=Aria
|
||||||
|
default-tmp-storage-engine=Aria
|
||||||
|
|
||||||
|
!includedir /etc/mysql/mariadb.conf.d/
|
||||||
|
!includedir /etc/mysql/conf.d/
|
Loading…
Reference in New Issue
Block a user