Docker Release is a repository that provides Docker images for various services, It publishes images to Docker Hub, GitHub Container Registry, and AliCloud Container Registry. The images are built with the latest source code and are available for multiple architectures.
All images are provided with the latest
and nightly
tags (if available). For other versions, please refer to the Docker Hub or GHCR Container Registry pages.
The following images are available:
- Nginx:
funnyzak/nginx:latest
(Docker Hub) - openjdk:
funnyzak/openjdk:latest
(Docker Hub) - git-sync:
funnyzak/git-sync:latest
(Docker Hub) - Snell-Server:
funnyzak/snell-server:latest
(Docker Hub) - One-API:
funnyzak/one-api:latest
(Docker Hub) - NeZha-Dashboard:
funnyzak/nezha-dashboard:latest
(Docker Hub) - vCards:
funnyzak/vcards:latest
(Docker Hub) - Canal-Adaptor:
funnyzak/canal-adapter:latest
(Docker Hub) - Canal-Deployer:
funnyzak/canal-deployer:latest
(Docker Hub) - Canal-Admin:
funnyzak/canal-admin:latest
(Docker Hub) - y-webrtc-signaling Server:
funnyzak/y-webrtc-signaling:latest
(Docker Hub) - Abracadabra Demo:
funnyzak/abracadabra-web:latest
(Docker Hub) - LibreOffice-Server:
funnyzak/libreoffice-server:latest
(Docker Hub) - Request-Hub:
funnyzak/request-hub:latest
(Docker Hub) - Cron:
funnyzak/cron:latest
(Docker Hub) - MySQL Dump:
funnyzak/mysql-dump:latest
(Docker Hub) - Dify2OpenAI:
funnyzak/dify2openai:latest
(Docker Hub) - Certimate:
funnyzak/certimate:latest
(Docker Hub) - Watermark
funnyzak/watermark:latest
(Docker Hub) - Hello:
funnyzak/hello:latest
(Docker Hub)
You can pull the above images from Docker Hub, GitHub Container Registry, or Aliyun Container Registry. For example:
- Docker Hub:
docker pull funnyzak/nginx:latest
- GitHub Container Registry:
docker pull ghcr.io/funnyzak/nginx:latest
- Aliyun Container Registry:
docker pull registry.cn-beijing.aliyuncs.com/funnyzak/nginx:latest
A nginx docker image with secure configurations and some useful modules, such as ngx_http_geoip_module
, ngx_http_image_filter_module
, ngx_http_perl_module
, ngx_http_xslt_filter_module
, ngx_mail_module
, ngx_stream_geoip_module
, ngx_stream_module
, ngx-fancyindex
, headers-more-nginx-module
, etc.
Build with the linux/arm64
, linux/386
, linux/amd64
, linux/arm/v6
, linux/arm/v7
, linux/arm64/v8
architectures.
Deployment
Docker Deployment:
docker run -d -t -i --name nginx --restart on-failure \
-v /path/to/conf.d:/etc/nginx/conf.d \
-p 1688:80 \
funnyzak/nginx
Docker Compose Deployment:
version: "3.3"
services:
nginx:
image: funnyzak/nginx
container_name: nginx
environment:
- TZ=Asia/Shanghai
volumes:
- ./nginx/conf.d:/etc/nginx/conf.d
restart: on-failure
ports:
- 1688:80
For more information, please check Nginx.
Snell Server is a lean encrypted proxy protocol. It is designed to be simple, lightweight.
This image is build from the latest source code of Snell Server. It supports linux/amd64
, linux/arm64
, linux/arm/v7
, linux/386
architecture.
Notice: Need to use with Surge iOS or Surge Mac, both of them support Snell protocol. The latest surge-server version is v4, which is not compatible with the previous versions like before. Please upgrade both the client (Surge iOS & Surge Mac) and the server binary.
Deployment
Docker Deployment:
docker run -d --name snell-server --restart always -p 12303:6180 -e PSK="5G0H4qdf32mEZx32t" funnyzak/snell-server
Docker Compose Deployment:
version: '3'
services:
snell:
image: funnyzak/snell-server
container_name: snell-server
environment:
PSK: 5G0H4qdf32mEZx32t
TZ: Asia/Shanghai
IPV6: false
PORT: 6180
restart: always
ports:
- 12303:6180
Surge Configuration:
[Proxy]
Proxy = snell, 1.2.3.4, 6333, psk=RANDOM_KEY_HERE, version=4
Echo Config:
docker exec -it snell-server cat /etc/snell-server.conf
For more information, please check Snell-Server.
One-API Access all LLM through the standard OpenAI API format, easy to deploy & use. It built with the linux/amd64
, linux/arm64
architectures.
Deployment
Docker Deployment:
Deployment command: docker run --name one-api -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/one-api:/data funnyzak/one-api
Update command: docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower -cR
The first 3000
in -p 3000:3000
is the port of the host, which can be modified as needed.
Data will be saved in the /home/ubuntu/data/one-api
directory on the host. Ensure that the directory exists and has write permissions, or change it to a suitable directory.
Nginx reference configuration:
server{
server_name openai.justsong.cn; # Modify your domain name accordingly
location / {
client_max_body_size 64m;
proxy_http_version 1.1;
proxy_pass http://localhost:3000; # Modify your port accordingly
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_cache_bypass $http_upgrade;
proxy_set_header Accept-Encoding gzip;
}
}
Next, configure HTTPS with Let's Encrypt certbot:
# Install certbot on Ubuntu:
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
# Generate certimates & modify Nginx configuration
sudo certbot --nginx
# Follow the prompts
# Restart Nginx
sudo service nginx restart
The initial account username is root
and password is 123456
.
For more information, please check One-API.
Y-WebRTC is a WebRTC signaling server. More information can be found at y-webrtc-signaling.
This image is built with the linux/amd64
, linux/arm64
, linux/arm/v7
, linux/arm64/v8
, linux/ppc64le
, linux/s390x
architectures.
Deployment
Docker Deployment:
docker run -d --name y-webrtc-signaling -p 4444:4444 funnyzak/y-webrtc-signaling:latest
Docker Compose Deployment:
version: '3.1'
services:
y-webrtc-signaling:
container_name: y-webrtc-signaling
image: funnyzak/y-webrtc-signaling:latest
restart: always
network_mode: bridge
ports:
- "4444:4444"
For more information, please check y-webrtc-signaling.
Abracadabra (魔曰) is an instant text encryption/de-sensitization tool, which can also be used for file encryption, based on C++ 11. More information can be found at Abracadabra_demo.
This image is built with the linux/amd64
, linux/arm64
, linux/arm/v7
, linux/arm64/v8
, inux/ppc64le
, linux/s390x
architectures.
Deployment
Docker Deployment:
docker run -d --name abracadabra-web -p 8080:80 funnyzak/abracadabra-web:latest
# ghcr
docker run -d --name abracadabra-web -p 8080:80 ghcr.io/funnyzak/abracadabra-web:latest
# aliyun
docker run -d --name abracadabra-web -p 8080:80 registry.cn-beijing.aliyuncs.com/funnyzak/abracadabra-web:latest
Docker Compose Deployment:
version: '3.1'
services:
abracadabra-web:
container_name: abracadabra-web
image: funnyzak/abracadabra-web:latest
restart: always
network_mode: bridge
ports:
- "8080:80"
After Startup:
For more information, please check Abracadabra_demo.
LibreOffice Service service for editing documents online and converting Word to PDF via Web API. This service contains a Web API based on LibreOffice service App.
This image is built with the linux/amd64
, linux/arm64
architectures.
Deployment
Docker Deployment:
docker run -d --name libreoffice -p 3000:3000 -p 3001:8038 funnyzak/libreoffice-server:latest
Docker Compose Deployment:
version: "3.1"
services:
libreoffice:
image: funnyzak/libreoffice-server
container_name: libreoffice
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Shanghai
# volumes:
# -./media/fonts:/usr/share/fonts/custom # 自定义字体
ports:
- 3000:3000 # libreoffice web editor
- 3001:8038 # web api
restart: unless-stopped
For more information, please check LibreOffice-Server.
RequestHub is used to receive, record, and proxy HTTP requests. This image supports linux/386
, linux/amd64
, linux/arm/v6
, linux/arm/v7
, linux/arm64/v8
, linux/s390x
.
Deployment
Docker Deployment:
docker run -d --name request-hub -p 8080:8080 funnyzak/request-hub:latest
Docker Compose Deployment:
version: '3.1'
services:
requesthub:
image: funnyzak/request-hub
container_name: requesthub
restart: always
environment:
- TZ=Asia/Shanghai
- LANG=C.UTF-8
- CONFIG_YML=/config.yml
- NO_WEB=false
- PORT=54321
- MAX_REQUESTS=1024
- USER_NAME=hello
- PASSWORD=world
volumes:
-./config.yml:/config.yml
ports:
- 80:54321
After Deployment:
For more information, please check Request-Hub.
Alibaba Canal, a component for incremental subscription and consumption of binlogs in MySQL. Images are built for linux/amd64
and linux/arm64
architectures, and based on Official canal repo.
The following images are available:
Image | Tag | Size | Pulls |
---|---|---|---|
Canal-Adapter | |||
Canal-Deployer | |||
Canal-Admin |
All Images are installed under the /opt/canal
directory. For example, the canal-adapter
service is installed under /opt/canal/canal-adapter
.
Docker Pull
# Docker Hub
docker pull funnyzak/canal-adapter:latest
docker pull funnyzak/canal-deployer:latest
docker pull funnyzak/canal-admin:latest
# GitHub Container Registry (GHCR)
docker pull ghcr.io/funnyzak/canal-adapter:latest
docker pull ghcr.io/funnyzak/canal-deployer:latest
docker pull ghcr.io/funnyzak/canal-admin:latest
# Alibaba Cloud Container Registry
docker pull registry.cn-beijing.aliyuncs.com/funnyzak/canal-adapter:latest
docker pull registry.cn-beijing.aliyuncs.com/funnyzak/canal-deployer:latest
docker pull registry.cn-beijing.aliyuncs.com/funnyzak/canal-admin:latest
For more information about Canal, please check Alibaba Canal.
cron is a lightweight service that runs in the background and executes scheduled tasks. It builds on the official alpine
image and includes dcron
as the cron service. The image is available for multiple architectures, including linux/386
, linux/amd64
, linux/arm/v6
, linux/arm/v7
, linux/arm64/v8
, linux/ppc64le
, linux/riscv64
, linux/s390x
.
Installed packages: dcron
, ca-certimates
, curl
, tar
, tzdata
, bash
, zip
, unzip
, rsync
.
For more information about cron, please check Cron Documentation.
mysql-dump is a simple MySQL backup tool that can backup all databases or specified databases. It can push message with pushoo and delete expired dump files. It supports custom commands before and after the dump, custom mysqldump options, compressed dump files, and crontab rules.
The image is available for multiple architectures, including linux/386
, linux/amd64
, linux/arm64
, linux/arm64/v8
, linux/ppc64le
, linux/riscv64
.
For more information about mysql-dump, please check MySQL Dump.
This is a simple "Hello, World!" program written in Go. Used to demonstrate how to build a Docker image.
For more information about Hello, please check Hello.
Images build directory is located at ./Docker. You can also download the directory to build the images yourself.
./Docker/nginx
: Build the Nginx service image../Docker/one-api
: Build the One-API service image../Docker/snell-server
: Build the Snell-Server service image../Docker/y-webrtc-signaling
: Build the y-webrtc-signaling service image../Docker/abracadabra-web
: Build the Abracadabra_demo service image../Docker/libreoffice-server
: Build the LibreOffice-Server service image../Docker/request-hub
: Build the Request-Hub service image../Docker/canal
: Build the Alibaba Canal service images.
If you have any questions or suggestions, please feel free to open an issue or pull request.