├── .gitignore
├── README.md
├── anything-llm.sh
├── autok3s.sh
├── bytebase.sh
├── docker-compose.yml
├── eclipse-mosquitto.sh
├── memos.sh
├── minio.sh
├── mongo.sh
├── my-dolt.sh
├── my-redis.sh
├── my-ubuntu-arm.sh
├── my-zookeeper.sh
├── mysql.sh
├── nginxwebui.sh
├── picimpact.sh
├── piwigo.sh
├── portainer.sh
├── postgres.sh
├── syncthing.sh
└── ubuntu.sh
/.gitignore:
--------------------------------------------------------------------------------
1 | # Created by .ignore support plugin (hsz.mobi)
2 | ### Example user template template
3 | ### Example user template
4 |
5 | # IntelliJ project files
6 | .idea/
7 | *.iml
8 | out
9 | gen
10 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # **Docker Repo**
2 |
3 | A repository stores some dockerfiles or docker-compose files for quickly starting service or service cluster.
4 |
5 | 一个使用Dockerfile和Docker-Compose快速搭建各种服务组件或服务组件集群的仓库;
6 |
7 | About Dockerfile:
8 |
9 | - Official:[DockerFile Official Doc](https://docs.docker.com/engine/reference/builder/)
10 | - Blog:[Dockerfile学习](https://jasonkayzk.github.io/2019/10/16/Dockerfile%E5%AD%A6%E4%B9%A0/)
11 |
12 | About Docker-Compose:
13 |
14 | - Official:[Docker-Compose Official Doc](https://docs.docker.com/compose/)
15 |
16 |
17 |
18 | ## **Finished**
19 |
20 | | Image | Date | Info | Note |
21 | | ------------------------------------------------------------ | ---------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
22 | | [zookeeper-v3.4-cluster](https://github.com/JasonkayZK/docker_repo/tree/zookeeper-v3.4-cluster) | 2020-04-26 | zookeeper-3.4 cluster | 3 or more nodes |
23 | | [kafka-v2.4.1-cluster](https://github.com/JasonkayZK/docker_repo/tree/kafka-v2.4.1-cluster) | 2020-04-26 | kafka-v2.4.1-cluster | zookeeper cluster & kafka cluster |
24 | | [elk-v7.1-single](https://github.com/JasonkayZK/docker_repo/tree/elk-v7.1-single) | 2021-05-15 | ELK-v7.1.0-single | Compose ELK Single-Node
(Without Filebeat) |
25 | | [elk-stack-v7.1-single](https://github.com/JasonkayZK/docker_repo/tree/elk-stack-v7.1-single) | 2021-05-15 | ELK-Stack-v7.1.0-single | Compose ELK Single-Node
(Full-Stack with Filebeat) |
26 | | [hadoop-v2.7-single](https://github.com/JasonkayZK/docker_repo/tree/hadoop-v2.7-single) | 2021-06-25 | Hadoop-v2.7-Single | Directly run with Docker |
27 | | [redash-single](https://github.com/JasonkayZK/docker_repo/tree/redash-single) | 2021-08-08 | Redash-v8 | Directly run Redash with Docker |
28 | | [hadoop-3.1.3-cluster](https://github.com/JasonkayZK/docker_repo/tree/hadoop-3.1.3-cluster) | 2021-08-21 | Hadoop-3.1.3-cluster | Run Hadoop-3.1.3 cluster with Docker |
29 | | [epic-games-claimer](https://github.com/JasonkayZK/docker_repo/tree/epic-games-claimer) | 2021-09-04 | Epic-game-claimer | Auto gain free epic game everyday |
30 | | [elk-v7.14-single](https://github.com/JasonkayZK/docker_repo/tree/elk-v7.14-single) | 2021-09-11 | ELK-Stack-v7.14.0-single | Update version: [elk-stack-v7.1-single](https://github.com/JasonkayZK/docker_repo/tree/elk-stack-v7.1-single)
Contributed by [wwhai](https://github.com/wwhai) |
31 | | [mysql-federated](https://github.com/JasonkayZK/docker-repo/tree/mysql-federated) | 2021-11-09 | MySQL Federated Engine Demo | A demo to show how Federated Engine works in MySQL
Blog: [《MySQL跨数据库查询方案总结》](https://jasonkayzk.github.io/2021/11/09/MySQL跨数据库查询方案总结/) |
32 | | [dubbo-admin](https://github.com/JasonkayZK/docker-repo/tree/dubbo-admin) | 2023-03-23 | Dubbo Admin v0.5.0 | Run Dubbo Admin & Zookeeper with Docker |
33 | | [canal](https://github.com/JasonkayZK/docker-repo/tree/canal) | 2023-03-26 | Canal v1.1.6 | Run Canal & MySQL with docker-compose
Blog: [《Java订阅Binlog的几种方式》](https://jasonkayzk.github.io/2023/03/26/Java订阅Binlog的几种方式/) |
34 | | [ansible](https://github.com/JasonkayZK/docker-repo/tree/ansible) | 2023-04-12 | Ubuntu 20.04 ARM/AMD64 with ssh | Run Ansible managed node cluster |
35 | | [talebook](https://github.com/JasonkayZK/docker-repo/tree/talebook) | 2024-08-22 | talebook v3.8.1 & douban-api-rs | A branch to deploy [talebook](https://github.com/talebook/talebook) & [douban-rs-api ](https://github.com/cxfksword/douban-api-rs) stack |
36 | | [milvus-standalone](https://github.com/JasonkayZK/docker-repo/tree/milvus-standalone) | 2025-01-29 | [milvus](https://github.com/milvus-io/milvus) standalone version | A branch to deploy [milvus](https://github.com/milvus-io/milvus) standalone |
37 | | | | | |
38 |
39 |
40 |
41 | ## **Notice**
42 |
43 | For some obvious policy reasons, DockerHub is prohibited in some places. 🚫
44 |
45 | But nowadays using docker images is inevitable!
46 |
47 | One ideal way to solve this issue is to create a mirror site.
48 |
49 | Here i used [tech-shrimp/docker_image_pusher](https://github.com/tech-shrimp/docker_image_pusher) to pull images from DockerHub and push to my own Aliyun for fully public use!
50 |
51 | If you don't know how to use the repository above, just modify the `images.txt` in this repo: [docker_image_pusher](https://github.com/JasonkayZK/docker_image_pusher).
52 |
53 | And i will provide the image urls for you!
54 |
55 | > And the images in this repo's scripts will be all replaced to my own Aliyun.
56 | >
57 | > For how-to:
58 | > - [《通过GithubActions拉取并推送Docker镜像到国内云》](https://jasonkayzk.github.io/2025/01/30/%E9%80%9A%E8%BF%87GithubActions%E6%8B%89%E5%8F%96%E5%B9%B6%E6%8E%A8%E9%80%81Docker%E9%95%9C%E5%83%8F%E5%88%B0%E5%9B%BD%E5%86%85%E4%BA%91/)
59 |
60 |
--------------------------------------------------------------------------------
/anything-llm.sh:
--------------------------------------------------------------------------------
1 | export STORAGE_LOCATION=$HOME/workspace/anythingllm && \
2 | mkdir -p $STORAGE_LOCATION && \
3 | touch "$STORAGE_LOCATION/.env" && \
4 | chmod -R 0777 $STORAGE_LOCATION && \
5 | docker run -d -p 3001:3001 \
6 | --restart=unless-stopped \
7 | --name my-anything-llm \
8 | --cap-add SYS_ADMIN \
9 | -v ${STORAGE_LOCATION}:/app/server/storage \
10 | -v ${STORAGE_LOCATION}/.env:/app/server/.env \
11 | -e STORAGE_DIR="/app/server/storage" \
12 | registry.cn-hangzhou.aliyuncs.com/jasonkay/anythingllm:latest
13 |
--------------------------------------------------------------------------------
/autok3s.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --restart=always --name=my-autok3s --net host -v /var/run/docker.sock:/var/run/docker.sock cnrancher/autok3s:v0.5.2
2 |
--------------------------------------------------------------------------------
/bytebase.sh:
--------------------------------------------------------------------------------
1 | docker run --init -itd --name bytebase --restart always -p 15678:8080 --add-host host.docker.internal:host-gateway --health-cmd "curl --fail http://localhost:8080/healthz || exit 1" -v /root/data/docker-volumn/bytebase/data:/var/opt/bytebase --health-interval 5m --health-timeout 60s bytebase/bytebase:1.7.0 --data /var/opt/bytebase --port 8080
2 |
--------------------------------------------------------------------------------
/docker-compose.yml:
--------------------------------------------------------------------------------
1 | version: '3.4'
--------------------------------------------------------------------------------
/eclipse-mosquitto.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --restart=always -p 1883:1883 -p 9001:9001 --name my-eclipse-mosquitto eclipse-mosquitto
2 |
3 | ###### In Container ######
4 | ## Create user & passwd
5 | ## https://mosquitto.org/documentation/authentication-methods/
6 | docker exec -it my-eclipse-mosquitto /bin/sh
7 | cd /mosquitto
8 | mosquitto_passwd -c password_file
9 | ## Input passwd ...
10 |
11 | ## Change config
12 | vi /mosquitto/config/mosquitto.conf
13 | ### listener 1883
14 | ### password_file /mosquitto/password_file
15 |
16 | # Restart containner
17 | docker restart my-eclipse-mosquitto
18 |
--------------------------------------------------------------------------------
/memos.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --restart=always --name my-memos -p 15230:5230 neosmemo/memos:0.9.0
--------------------------------------------------------------------------------
/minio.sh:
--------------------------------------------------------------------------------
1 | mkdir -p /mnt/minio-data
2 |
3 | docker run -itd \
4 | --restart=always \
5 | -p 9000:9000 \
6 | -p 9001:9001 \
7 | --name minio \
8 | -v /mnt/minio-data:/data \
9 | -e "MINIO_ROOT_USER=ROOTNAME" \
10 | -e "MINIO_ROOT_PASSWORD=CHANGEME123" \
11 | quay.io/minio/minio server /data --console-address ":9001"
12 |
--------------------------------------------------------------------------------
/mongo.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --restart=always --name my-mongo -p 37017:27017 mongo:5.0.10 --auth
--------------------------------------------------------------------------------
/my-dolt.sh:
--------------------------------------------------------------------------------
1 | export DOLT_HOME=/root/workspace/dolt
2 |
3 | mkdir -p $DOLT_HOME
4 | mkdir -p $DOLT_HOME/server-conf
5 |
6 | # Write config, see more: https://docs.dolthub.com/sql-reference/server/configuration
7 | cat > $DOLT_HOME/server-conf/config.yaml << EOF
8 | log_level: info
9 |
10 | behavior:
11 | read_only: false
12 | autocommit: true
13 |
14 | user:
15 | name: root
16 | password: "your-password"
17 |
18 | listener:
19 | host: localhost
20 | port: 3306
21 | max_connections: 100
22 | read_timeout_millis: 28800000
23 | write_timeout_millis: 28800000
24 |
25 | performance:
26 | query_parallelism: null
27 | EOF
28 |
29 | docker run -itd --restart=always \
30 | --name my-dolt \
31 | -p 23306:3306 \
32 | -v $DOLT_HOME/server-conf:/etc/dolt/servercfg.d \
33 | -v $DOLT_HOME/dolt-conf:/etc/dolt/doltcfg.d \
34 | -v $DOLT_HOME/databases:/var/lib/dolt \
35 | dolthub/dolt-sql-server:1.32.0
36 |
37 | # Change config need restart the container...!
38 | docker exec -it my-dolt /bin/bash
39 |
40 | # Add config
41 | dolt config --global --set user.name "jasonkayzk"
42 | dolt config --global --set user.email "jasonkayzk@gmail.com"
43 | dolt login # set creds
44 |
45 | # Restart container
46 | docker restart my-dolt
47 |
48 |
49 |
--------------------------------------------------------------------------------
/my-redis.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --restart=always --name my-redis -p 16379:6379 redis:7.0.5 --requirepass "123456"
2 |
--------------------------------------------------------------------------------
/my-ubuntu-arm.sh:
--------------------------------------------------------------------------------
1 | # Features:
2 | # 1. Arm images for M1
3 | # 2. Tsinghua Images
4 | # 3. ssh (Default passwd 123456, Default port 22)
5 | docker run -itd -p10022:22 -v /root/data/docker-volumn/my-ubuntu:/root/workpsace --restart=always --name my-ubuntu --privileged=true jasonkay/ubuntu:arm-22.04 /bin/bash
--------------------------------------------------------------------------------
/my-zookeeper.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --restart=always --name my-zookeeper -p 12181:2181 zookeeper:3.4
2 |
--------------------------------------------------------------------------------
/mysql.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --restart=always --name my-mysql -p 13306:3306 -e MYSQL_ROOT_PASSWORD=123456 registry.cn-hangzhou.aliyuncs.com/jasonkay/mysql:8.0.39
2 |
--------------------------------------------------------------------------------
/nginxwebui.sh:
--------------------------------------------------------------------------------
1 | docker run -itd -e BOOT_OPTIONS="--server.port=18080" --name nginxwebui --restart=always --privileged=true --net=host cym1102/nginxwebui:latest
--------------------------------------------------------------------------------
/picimpact.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --restart=always --name=my-picimpact -p 13000:3000 -e DATABASE_URL="postgres://user:password@ip:port/postgres" -e AUTH_SECRET="your-password" besscroft/picimpact:latest
2 |
--------------------------------------------------------------------------------
/piwigo.sh:
--------------------------------------------------------------------------------
1 | mkdir -p /root/workspace/piwigo
2 |
3 | docker run -d \
4 | --name=my-piwigo \
5 | -e PUID=1000 \
6 | -e PGID=1000 \
7 | -e TZ=Etc/UTC+8 \
8 | -p 19880:80 \
9 | -v /root/workspace/piwigo/config:/config \
10 | -v /root/workspace/piwigo/appdata/gallery:/gallery \
11 | --restart unless-stopped \
12 | lscr.io/linuxserver/piwigo:15.5.0
13 |
--------------------------------------------------------------------------------
/portainer.sh:
--------------------------------------------------------------------------------
1 | docker run -d -p 18000:8000 -p 19443:9443 -p 19000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data registry.cn-hangzhou.aliyuncs.com/jasonkay/portainer-ce:latest
2 |
--------------------------------------------------------------------------------
/postgres.sh:
--------------------------------------------------------------------------------
1 | docker run --name my-postgres --restart=always -e POSTGRES_PASSWORD=123456 -e POSTGRES_USER=root -dit -p 15432:5432 postgres:12.12
--------------------------------------------------------------------------------
/syncthing.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --network=host -v /root/data/docker-volumn/sync-thing:/var/syncthing --restart=always --name=my-syncthing --privileged=true syncthing/syncthing:1.22
2 |
--------------------------------------------------------------------------------
/ubuntu.sh:
--------------------------------------------------------------------------------
1 | docker run -itd --net=host -v /root/data/docker-volumn/my-ubuntu:/root/workpsace --restart=always --name my-ubuntu --privileged=true ubuntu:22.04 /bin/bash
--------------------------------------------------------------------------------