moving docker stuff around,
This commit is contained in:
parent
239951ac48
commit
ef33698c33
9 changed files with 88 additions and 49 deletions
|
|
@ -1,3 +0,0 @@
|
||||||
plugins {
|
|
||||||
id("dev.adamko.factoriowebmap.archetype.base")
|
|
||||||
}
|
|
||||||
|
|
@ -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"
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
import com.github.gradle.node.npm.task.NpmTask
|
import com.github.gradle.node.npm.task.NpmTask
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension
|
|
||||||
import org.jetbrains.kotlin.util.parseSpaceSeparatedArgs
|
import org.jetbrains.kotlin.util.parseSpaceSeparatedArgs
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
|
|
@ -88,7 +87,7 @@ val copyModToServerTask = tasks.register<Copy>("copyModToServer") {
|
||||||
dependsOn(modPackageTask)
|
dependsOn(modPackageTask)
|
||||||
|
|
||||||
from(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") {
|
val serverStopTask = tasks.register<Exec>("dockerStop") {
|
||||||
|
|
@ -96,8 +95,8 @@ val serverStopTask = tasks.register<Exec>("dockerStop") {
|
||||||
|
|
||||||
mustRunAfter(copyModToServerTask)
|
mustRunAfter(copyModToServerTask)
|
||||||
|
|
||||||
workingDir = layout.projectDirectory.dir("src/test/resources/server/").asFile
|
workingDir = layout.projectDirectory.dir("infra/factorio-server").asFile
|
||||||
commandLine = parseSpaceSeparatedArgs("docker-compose stop")
|
commandLine = parseSpaceSeparatedArgs("docker-compose stop factorio-server")
|
||||||
}
|
}
|
||||||
|
|
||||||
val serverUpTask = tasks.register<Exec>("dockerUp") {
|
val serverUpTask = tasks.register<Exec>("dockerUp") {
|
||||||
|
|
@ -106,8 +105,8 @@ val serverUpTask = tasks.register<Exec>("dockerUp") {
|
||||||
mustRunAfter(copyModToServerTask)
|
mustRunAfter(copyModToServerTask)
|
||||||
dependsOn(serverStopTask)
|
dependsOn(serverStopTask)
|
||||||
|
|
||||||
workingDir = layout.projectDirectory.dir("src/test/resources/server/").asFile
|
workingDir = layout.projectDirectory.dir("infra/factorio-server").asFile
|
||||||
commandLine = parseSpaceSeparatedArgs("docker-compose up -d")
|
commandLine = parseSpaceSeparatedArgs("docker-compose up -d factorio-server")
|
||||||
}
|
}
|
||||||
|
|
||||||
//val serverRestartTask = tasks.register<Exec>("dockerRestart") {
|
//val serverRestartTask = tasks.register<Exec>("dockerRestart") {
|
||||||
|
|
|
||||||
1
modules/mod/infra/.env
Normal file
1
modules/mod/infra/.env
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
COMPOSE_PROJECT_NAME=factorio-infra
|
||||||
56
modules/mod/infra/docker-compose.yml
Normal file
56
modules/mod/infra/docker-compose.yml
Normal 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"
|
||||||
|
#
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
ARG KAFKA_DL_URL=https://dlcdn.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz
|
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
|
FROM debian:11-slim as Kafka-Download
|
||||||
ARG KAFKA_DL_URL
|
ARG KAFKA_DL_URL
|
||||||
|
|
||||||
|
|
@ -15,21 +16,22 @@ RUN echo "Downloading Kafka from $KAFKA_DL_URL" \
|
||||||
&& ls -la
|
&& ls -la
|
||||||
|
|
||||||
|
|
||||||
|
## Kafka ##
|
||||||
# KRaft (aka KIP-500) mode Preview Release
|
# KRaft (aka KIP-500) mode Preview Release
|
||||||
# https://github.com/apache/kafka/blob/041b76dc57f096be2a2d7532d917122992bff6e2/config/kraft/README.md
|
# https://github.com/apache/kafka/blob/041b76dc57f096be2a2d7532d917122992bff6e2/config/kraft/README.md
|
||||||
FROM openjdk:11
|
FROM openjdk:11 as kafka-kraft
|
||||||
|
|
||||||
WORKDIR /kafka
|
WORKDIR /kafka
|
||||||
|
|
||||||
COPY --from=Kafka-Download /kafka /kafka
|
COPY --from=Kafka-Download /kafka .
|
||||||
|
|
||||||
# hardcoded for now, based on values from './config/kraft/server.properties'
|
# hardcoded for now, based on values from './config/kraft/server.properties'
|
||||||
# log.dirs
|
# log.dirs
|
||||||
VOLUME /tmp/kraft-combined-logs
|
VOLUME /tmp/kraft-combined-logs
|
||||||
# listeners, controller.quorum.voters
|
# 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 \
|
RUN echo "$(./bin/kafka-storage.sh random-uuid)" > cluster_id \
|
||||||
&& echo "Generated a Kafka Cluster ID: $(cat 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
|
# launch the broker in KRaft mode, which means that it runs without ZooKeeper
|
||||||
ENTRYPOINT ["./bin/kafka-server-start.sh", "./config/kraft/server.properties"]
|
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"]
|
||||||
|
|
@ -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
|
|
||||||
|
|
@ -5,10 +5,10 @@ include(
|
||||||
// ":modules:mod2",
|
// ":modules:mod2",
|
||||||
":modules:server",
|
":modules:server",
|
||||||
":modules:kt-rcon",
|
":modules:kt-rcon",
|
||||||
":modules:kafka",
|
|
||||||
":modules:data-model",
|
":modules:data-model",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
enableFeaturePreview("VERSION_CATALOGS")
|
enableFeaturePreview("VERSION_CATALOGS")
|
||||||
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
|
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue