## 阿里云 ECS 安装 docker > https://developer.aliyun.com/article/1662498 ## 普通用户入组 ``` sudo usermod -aG docker userapp ``` ## nginx-proxy ``` docker run -d -p 9024:80 -p 9025:81 -p 9026:443 -v /data/letsencrypt:/etc/letsencrypt -v /data/nginx-proxy-manager/data:/data --name nginx-proxy-manager docker.io/jc21/nginx-proxy-manager:latest ``` ## portainer ```shell docker run -d -p 9000:9000 --name porainer -v /var/run/docker.sock:/var/run/docker.sock -v /data/portainer:/data --restart=always portainer/portainer-ce:2.19.4 ``` ## mysql /data/mysql/conf ```shell touch my.cnf ``` ```text [client] default_character_set=utf8mb4 [mysql] default_character_set=utf8mb4 [mysqld] collation_server = utf8mb4_unicode_ci character_set_server = utf8mb4 ``` ```shell docker run -p 9090:3306 --name mysql \ -v /data/mysql/log:/var/log/mysql \ -v /data/mysql/data:/var/lib/mysql \ -v /data/mysql/conf:/etc/mysql/conf.d \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:5.7 ``` ## nginx 1. 生成容器 1. 将容器nginx.conf文件复制到宿主机 1. 将容器conf.d文件夹下内容复制到宿主机 1. 将容器中的html文件夹复制到宿主机 ``` docker run --name nginx -p 9001:80 -d nginx docker cp nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf docker cp nginx:/etc/nginx/conf.d /home/nginx/conf/conf.d # 删除正在运行的nginx容器 docker rm -f nginx docker run \ -p 9002:80 \ --name nginx \ -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /home/nginx/conf/conf.d:/etc/nginx/conf.d \ -v /home/nginx/log:/var/log/nginx \ -v /home/nginx/html:/usr/share/nginx/html \ -d nginx:latest ``` ## redis 配置文件 ![[redis.conf]] ``` docker run -p 6379:6379 --name redis -v /data/redis/data:/data -v /data/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf ``` ## docker Jenkins https://blog.csdn.net/weixin_44000133/article/details/132189696 ## filebrowser ### 注意!!!! 需要先创建文件,不是文件夹 ``` docker run \ -v /path/to/root:/srv \ -v /path/to/filebrowser.db:/database/filebrowser.db \ -v /path/to/settings.json:/config/settings.json \ -e PUID=$(id -u) \ -e PGID=$(id -g) \ -p 8080:80 \ -d \ --name filebrowser \ filebrowser/filebrowser:v2.25.0-s6 ``` ```json settings.json { "port": 80, "baseURL": "", "address": "", "log": "stdout", "database": "/database/filebrowser.db", "root": "/srv" } ``` ## ssh web niruix/sshwifty ``` ssl 凭据 openssl req -newkey rsa:4096 -nodes -keyout domain.key -x509 -days 90 -out domain.crt mkdir -p /data/sshwifty docker run --detach \ --restart always \ --publish 8182:8182 \ --env SSHWIFTY_DOCKER_TLSCERT="$(cat domain.crt)" \ --env SSHWIFTY_DOCKER_TLSCERTKEY="$(cat domain.key)" \ --name sshwifty \ niruix/sshwifty:latest ```