├── .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 --------------------------------------------------------------------------------