moving docker stuff around,

This commit is contained in:
Adam 2021-10-22 00:07:26 +02:00
parent 239951ac48
commit ef33698c33
9 changed files with 88 additions and 49 deletions

View file

@ -1,3 +0,0 @@
plugins {
id("dev.adamko.factoriowebmap.archetype.base")
}

View file

@ -1,14 +0,0 @@
version: "3.9"
services:
kafka:
image: dev-adamko/kafka
container_name: "kafka-factorio"
build:
dockerfile: "kafka.Dockerfile"
args:
KAFKA_DL_URL: "https://dlcdn.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz"
ports:
- "9092:9092"
- "9093:9093"

View file

@ -1,5 +1,4 @@
import com.github.gradle.node.npm.task.NpmTask
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension
import org.jetbrains.kotlin.util.parseSpaceSeparatedArgs
plugins {
@ -88,7 +87,7 @@ val copyModToServerTask = tasks.register<Copy>("copyModToServer") {
dependsOn(modPackageTask)
from(modPackageTask)
into(layout.projectDirectory.dir("src/test/resources/server/data/mods").asFile)
into(layout.projectDirectory.dir("infra/factorio-server/data/mods").asFile)
}
val serverStopTask = tasks.register<Exec>("dockerStop") {
@ -96,8 +95,8 @@ val serverStopTask = tasks.register<Exec>("dockerStop") {
mustRunAfter(copyModToServerTask)
workingDir = layout.projectDirectory.dir("src/test/resources/server/").asFile
commandLine = parseSpaceSeparatedArgs("docker-compose stop")
workingDir = layout.projectDirectory.dir("infra/factorio-server").asFile
commandLine = parseSpaceSeparatedArgs("docker-compose stop factorio-server")
}
val serverUpTask = tasks.register<Exec>("dockerUp") {
@ -106,8 +105,8 @@ val serverUpTask = tasks.register<Exec>("dockerUp") {
mustRunAfter(copyModToServerTask)
dependsOn(serverStopTask)
workingDir = layout.projectDirectory.dir("src/test/resources/server/").asFile
commandLine = parseSpaceSeparatedArgs("docker-compose up -d")
workingDir = layout.projectDirectory.dir("infra/factorio-server").asFile
commandLine = parseSpaceSeparatedArgs("docker-compose up -d factorio-server")
}
//val serverRestartTask = tasks.register<Exec>("dockerRestart") {

1
modules/mod/infra/.env Normal file
View file

@ -0,0 +1 @@
COMPOSE_PROJECT_NAME=factorio-infra

View file

@ -0,0 +1,56 @@
version: "3.9"
services:
factorio-server:
image: factoriotools/factorio:1.1.42
# logging:
# driver: "json-file"
container_name: "factorio"
restart: "unless-stopped"
ports:
- "34197:34197/udp" # factorio
- "27015:27015/tcp" # rcon
volumes:
- "./data:/factorio"
# logging:
# driver: "mickyg/kafka-logdriver:latest"
# options:
# KAFKA_BROKER_ADDR: "kafka-kraft"
# LOG_TOPIC: "dockerlogs-factorio-server"
# LOG_TAG: "factorio-server"
# environment:
# RCON_PORT: 27715
# environment:
# - PUID=1000
# - PGID=1000
# - UPDATE_MODS_ON_START=true
# - USERNAME=FactorioUsername
# - TOKEN=FactorioToken
kafka-kraft:
image: dev-adamko/kafka-kraft
container_name: "kafka-factorio"
build:
dockerfile: "kafka.Dockerfile"
target: "kafka-kraft"
args:
KAFKA_DL_URL: "https://dlcdn.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz"
ports:
- "9092:9092"
- "9093:9093"
# kafka-connect:
# image: dev-adamko/kafka-connect
# container_name: "kafka-connect"
# build:
# dockerfile: "kafka.Dockerfile"
# target: "kafka-connect"
# args:
# KAFKA_DL_URL: "https://dlcdn.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz"
# depends_on:
# - kafka-kraft
# ports:
# - "8083:8083"
#

View file

@ -1,5 +1,6 @@
ARG KAFKA_DL_URL=https://dlcdn.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz
## builder ##
FROM debian:11-slim as Kafka-Download
ARG KAFKA_DL_URL
@ -15,21 +16,22 @@ RUN echo "Downloading Kafka from $KAFKA_DL_URL" \
&& ls -la
## Kafka ##
# KRaft (aka KIP-500) mode Preview Release
# https://github.com/apache/kafka/blob/041b76dc57f096be2a2d7532d917122992bff6e2/config/kraft/README.md
FROM openjdk:11
FROM openjdk:11 as kafka-kraft
WORKDIR /kafka
COPY --from=Kafka-Download /kafka /kafka
COPY --from=Kafka-Download /kafka .
# hardcoded for now, based on values from './config/kraft/server.properties'
# log.dirs
VOLUME /tmp/kraft-combined-logs
# listeners, controller.quorum.voters
EXPOSE 9092, 9093
EXPOSE 9092 9093
# Generate a cluster ID
# Generate a cluster ID (must use this .sh to generate a UUID)
RUN echo "$(./bin/kafka-storage.sh random-uuid)" > cluster_id \
&& echo "Generated a Kafka Cluster ID: $(cat cluster_id)"
@ -41,3 +43,22 @@ RUN ./bin/kafka-storage.sh format \
# launch the broker in KRaft mode, which means that it runs without ZooKeeper
ENTRYPOINT ["./bin/kafka-server-start.sh", "./config/kraft/server.properties"]
### Kafka Connect ##
#FROM openjdk:11 as kafka-connect
## https://github.com/confluentinc/cp-docker-images/blob/5.3.3-post/debian/kafka-connect-base/Dockerfile
#
#ENV COMPONENT=kafka-connect
#
#WORKDIR /kafka-connect
#
#COPY --from=Kafka-Download /kafka .
#
## Default kafka-connect rest.port
#EXPOSE 8083
#
#VOLUME ["/etc/${COMPONENT}/jars", "/etc/${COMPONENT}/secrets"]
#
## launch the broker in KRaft mode, which means that it runs without ZooKeeper
#ENTRYPOINT ["./bin/connect-standalone.sh", "./config/connect-standalone.properties"]

View file

@ -1,21 +0,0 @@
version: "3.9"
services:
factorio:
image: factoriotools/factorio:1.1.42
# logging:
# driver: "json-file"
container_name: "factorio"
restart: "unless-stopped"
ports:
- "34197:34197/udp" # factorio
- "27015:27015/tcp" # rcon
volumes:
- "./data:/factorio"
# environment:
# RCON_PORT: 27715
# environment:
# - PUID=1000
# - PGID=1000
# - UPDATE_MODS_ON_START=true
# - USERNAME=FactorioUsername
# - TOKEN=FactorioToken