From 8a716ac85d18d21317f3006d146aa0f5ef9bd61f Mon Sep 17 00:00:00 2001 From: Erik Perri Date: Thu, 15 Jan 2026 16:23:04 -0500 Subject: [PATCH 1/4] update: remove minio --- .gitignore | 3 --- docker/data-source-tools/docker-compose.yml | 15 --------------- 2 files changed, 18 deletions(-) diff --git a/.gitignore b/.gitignore index f659845..4befed3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,2 @@ .DS_Store .idea -docker/data-source-tools/storage -docker/data-source-tools/storage/* - diff --git a/docker/data-source-tools/docker-compose.yml b/docker/data-source-tools/docker-compose.yml index da18e69..5595eab 100644 --- a/docker/data-source-tools/docker-compose.yml +++ b/docker/data-source-tools/docker-compose.yml @@ -12,21 +12,6 @@ services: MP_MAX_MESSAGES: 5000 MP_SMTP_AUTH_ACCEPT_ANY: 1 MP_SMTP_AUTH_ALLOW_INSECURE: 1 - minio: - hostname: s3.docker - image: minio/minio:latest - container_name: sourcetoad_minio - ports: - - "10000:10000" - - "10001:10001" - volumes: - - ./storage/data:/data - environment: - - MINIO_ROOT_USER=root - - MINIO_ROOT_PASSWORD=password - command: server /data/ --address :10000 --console-address :10001 - networks: - - st-internal phpmyadmin: image: phpmyadmin/phpmyadmin:latest container_name: sourcetoad_phpmyadmin From d056a14801daf8c3d12b03a3d2cd85a580870aa9 Mon Sep 17 00:00:00 2001 From: Erik Perri Date: Thu, 15 Jan 2026 16:23:15 -0500 Subject: [PATCH 2/4] update: add rustfs --- .../data-source-services/docker-compose.yml | 27 +++++++++++++++++++ .../data-source-services/storage/.gitignore | 2 ++ 2 files changed, 29 insertions(+) create mode 100644 docker/data-source-services/storage/.gitignore diff --git a/docker/data-source-services/docker-compose.yml b/docker/data-source-services/docker-compose.yml index 97a2374..cfd240b 100755 --- a/docker/data-source-services/docker-compose.yml +++ b/docker/data-source-services/docker-compose.yml @@ -38,6 +38,33 @@ services: - MYSQL_PASSWORD=mariadb_pass networks: - st-internal + rustfs: + container_name: sourcetoad_rustfs + image: rustfs/rustfs:1.0.0-alpha.79 + ports: + - "9000:9000" + - "9001:9001" + environment: + - RUSTFS_VOLUMES=/data + - RUSTFS_ADDRESS=0.0.0.0:9000 + - RUSTFS_CONSOLE_ADDRESS=0.0.0.0:9001 + - RUSTFS_CONSOLE_ENABLE=true + - RUSTFS_EXTERNAL_ADDRESS=:9000 + - RUSTFS_CORS_ALLOWED_ORIGINS=* + - RUSTFS_CONSOLE_CORS_ALLOWED_ORIGINS=* + - RUSTFS_LOG_LEVEL=info + volumes: + - ./storage/rustfs:/data + networks: + st-internal: + aliases: + - s3.docker + healthcheck: + test: ["CMD", "sh", "-c", "curl -f http://127.0.0.1:9000/health && curl -f http://127.0.0.1:9001/health"] + interval: 30s + timeout: 10s + retries: 3 + start_period: 40s networks: st-internal: external: true diff --git a/docker/data-source-services/storage/.gitignore b/docker/data-source-services/storage/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/docker/data-source-services/storage/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore From f1805a6d1e6a996b328e4bd594dd23e90788dd68 Mon Sep 17 00:00:00 2001 From: Erik Perri Date: Thu, 15 Jan 2026 16:30:44 -0500 Subject: [PATCH 3/4] docs: add rustfs --- README.md | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 594093e..e6ee2a0 100644 --- a/README.md +++ b/README.md @@ -31,13 +31,28 @@ cd ./devop-tools/docker/data-source-services && docker compose up --build -d * Run `set COMPOSE_CONVERT_WINDOWS_PATHS=1` in your CMD or PowerShell terminal * Optionally, [read](https://github.com/docker/compose/issues/4303#issuecomment-379563170) this bug report. +### RustFS +_For running an S3 service locally._ + +* Edit the `/etc/hosts` file on your system and make a reference for `127.0.0.1 s3.docker` +* To create buckets or view their files, you can access the console at: http://localhost:9001 + * Username: rustfsadmin + * Password: rustfsadmin +* Modify the project's `.env` as follows: + * `FILESYSTEM_DRIVER=s3` + * `AWS_ACCESS_KEY_ID=rustfsadmin` + * `AWS_SECRET_ACCESS_KEY=rustfsadmin` + * `AWS_DEFAULT_REGION=us-east-1` + * `AWS_BUCKET=[project-bucket-name]` + * `AWS_ENDPOINT=http://s3.docker:9000` + * `AWS_USE_PATH_STYLE_ENDPOINT=true` + --- ## Data Source Tools * Optionally included is the following tools: * phpMyAdmin * Mailpit - * MinIO ```bash cd ./devop-tools/docker/data-source-tools && docker compose up --build -d @@ -63,23 +78,6 @@ _For mimicking an email inbox (ala mailtrap) for local usage._ * `MAIL_PASSWORD=null` * `MAIL_ENCRYPTION=null` -### MinIO -_For running an S3 service locally._ - -* Edit the `/etc/hosts` file on your system and make a reference for `127.0.0.1 s3.docker` -* Open the admin console http://s3.docker:10001 and login. - * username: root - * password: password -* Create an appropriate bucket for each project as needed. -* Modify the project's `.env` as follows: - * `FILESYSTEM_DRIVER=s3` - * `AWS_ACCESS_KEY_ID=root` - * `AWS_SECRET_ACCESS_KEY=password` - * `AWS_DEFAULT_REGION=us-east-1` - * `AWS_BUCKET=[project-bucket-name]` - * `AWS_ENDPOINT=http://s3.docker:10000` - * `AWS_USE_PATH_STYLE_ENDPOINT=true` - --- ## Scripts From 7559513d2d97026949f2368d08c6647cce794d69 Mon Sep 17 00:00:00 2001 From: Erik Perri Date: Thu, 15 Jan 2026 16:56:17 -0500 Subject: [PATCH 4/4] update: switch to a 5 minute health check --- docker/data-source-services/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/data-source-services/docker-compose.yml b/docker/data-source-services/docker-compose.yml index cfd240b..1bcf4c1 100755 --- a/docker/data-source-services/docker-compose.yml +++ b/docker/data-source-services/docker-compose.yml @@ -61,7 +61,7 @@ services: - s3.docker healthcheck: test: ["CMD", "sh", "-c", "curl -f http://127.0.0.1:9000/health && curl -f http://127.0.0.1:9001/health"] - interval: 30s + interval: 5m timeout: 10s retries: 3 start_period: 40s