Compare commits
3
Commits
ft/mod
..
26e1d9b094
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
26e1d9b094 | ||
|
|
461f8435c0 | ||
|
|
1b47bd13a3 |
@@ -0,0 +1,7 @@
|
|||||||
|
.git
|
||||||
|
.gitignore
|
||||||
|
.env
|
||||||
|
*.md
|
||||||
|
Dockerfile
|
||||||
|
docker-compose*.yml
|
||||||
|
.dockerignore
|
||||||
+21
@@ -0,0 +1,21 @@
|
|||||||
|
# Build stage
|
||||||
|
FROM golang:1.26.1-alpine AS builder
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
COPY go.mod go.sum ./
|
||||||
|
RUN go mod download
|
||||||
|
|
||||||
|
COPY . .
|
||||||
|
RUN CGO_ENABLED=0 GOOS=linux go build -o /velox-bot .
|
||||||
|
|
||||||
|
# Run stage
|
||||||
|
FROM alpine:3.19
|
||||||
|
|
||||||
|
RUN apk add --no-cache ca-certificates tzdata
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
COPY --from=builder /velox-bot .
|
||||||
|
|
||||||
|
ENTRYPOINT ["./velox-bot"]
|
||||||
+19
-2
@@ -19,5 +19,22 @@ services:
|
|||||||
timeout: 5s
|
timeout: 5s
|
||||||
retries: 5
|
retries: 5
|
||||||
|
|
||||||
volumes:
|
bot:
|
||||||
velox_pgdata:
|
build: .
|
||||||
|
container_name: velox-bot
|
||||||
|
restart: unless-stopped
|
||||||
|
env_file: .env
|
||||||
|
environment:
|
||||||
|
DB_HOST: ${DB_HOST:-postgres://velox:velox_pwd@db:5432/velox?sslmode=disable}
|
||||||
|
LAVALINK_HOST: ${LAVALINK_HOST:-ws://lavalink:2333}
|
||||||
|
LAVALINK_PASSWORD: ${LAVALINK_PASSWORD:-youshallnotpass}
|
||||||
|
depends_on:
|
||||||
|
db:
|
||||||
|
condition: service_healthy
|
||||||
|
networks:
|
||||||
|
- default
|
||||||
|
- lavalink
|
||||||
|
|
||||||
|
networks:
|
||||||
|
lavalink:
|
||||||
|
external: true
|
||||||
@@ -18,9 +18,8 @@ type Config struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func LoadConfig() (*Config, error) {
|
func LoadConfig() (*Config, error) {
|
||||||
if err := godotenv.Load(); err != nil {
|
// Load .env if present (e.g. local dev). Ignore if missing (e.g. Docker injects env vars).
|
||||||
return nil, err
|
_ = godotenv.Load()
|
||||||
}
|
|
||||||
|
|
||||||
token := os.Getenv("BOT_TOKEN")
|
token := os.Getenv("BOT_TOKEN")
|
||||||
if token == "" {
|
if token == "" {
|
||||||
@@ -33,9 +32,6 @@ func LoadConfig() (*Config, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
guildID := os.Getenv("GUILD_ID")
|
guildID := os.Getenv("GUILD_ID")
|
||||||
if guildID == "" {
|
|
||||||
return nil, fmt.Errorf("GUILD_ID is not set")
|
|
||||||
}
|
|
||||||
|
|
||||||
dbHost := os.Getenv("DB_HOST")
|
dbHost := os.Getenv("DB_HOST")
|
||||||
if dbHost == "" {
|
if dbHost == "" {
|
||||||
|
|||||||
Reference in New Issue
Block a user