docker 部署ftp
===============================================
2022/3/13_第1次修改 ccb_warlock
===============================================
今年1月份在给一个项目做优化时需要部署ftp,故做此记录给需要的人。
PS. 由于我在笔记本上一般采取docker run或docker stack,而且docker compose和docker stack语法和用法类似,所以后续整理记录时我便不再描述docker compose部分。
一、部署docker
docker参考:https://www.cnblogs.com/straycats/p/10680502.html
swarm参考:https://www.cnblogs.com/straycats/p/8978135.html
二、部署ftp容器
2.1
mkdir -p /Users/mbp/docker/vol/vsftpd
mkdir -p /Users/mbp/docker/compose
2.2
docker network create \ --driver=bridge \ --subnet=172.11.0.0/16 \ --ip-range=172.11.0.0/16 \ --gateway=172.11.0.1 \ --attachable \ local-net
# swarm用的network
docker network create \ --driver=overlay \ --subnet=172.12.0.0/16 \ --ip-range=172.12.0.0/16 \ --gateway=172.12.0.1 \ --attachable \ swarm-net
2.3
2.3.1
docker run -d \ --name vsftpd \ -v /Users/mbp/docker/vol/vsftpd/data:/home/vsftpd \ -p 38020:20 \ -p 38021:21 \ -p 38022:38022 \ -e TZ=Asia/Shanghai \ -e PASV_ENABLE=YES \ -e PASV_ADDRESS=127.0.0.1 \ -e FTP_USER=myftp \ -e FTP_PASS=123456 \ -e PASV_MIN_PORT=38022 \ -e PASV_MAX_PORT=38022 \ --network local-net \ --restart on-failure \ fauria/vsftpd
PS.如果需要移除该容器,可以使用命令
docker stop vsftpd && docker rm vsftpd
2.3.2
# 编辑vsftpd-stack.yml
vi /Users/mbp/docker/compose/vsftpd-stack.yml
将下面的内容添加到vsftpd-stack.yml内。
version: '3.7' services: vsftpd: image: fauria/vsftpd environment: - TZ=Asia/Shanghai - PASV_ENABLE=YES - PASV_ADDRESS=127.0.0.1 - FTP_USER=myftp - FTP_PASS=123456 - PASV_MIN_PORT=38022 - PASV_MAX_PORT=38022 #- FILE_OPEN_MODE=0777 volumes: - /Users/mbp/docker/vol/vsftpd/data:/home/vsftpd #- /Users/mbp/docker/vol/vsftpd/log:/var/log/vsftpd deploy: replicas: 1 restart_policy: condition: on-failure # any resources: limits: cpus: "1" memory: 512M update_config: parallelism: 1 delay: 5s monitor: 10s max_failure_ratio: 0.1 order: start-first ports: - 38020:20 - 38021:21 - 38022:38022 networks: - swarm-net networks: swarm-net: external: true
# 创建栈
cd /Users/mbp/docker/compose
docker stack deploy -c vsftpd-stack.yml vsftpd-stack
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律