Docker搭建vsftpd+nginx服务器

一、安装vsftpd

1.创建ftp用户

useradd ftpuser -s /sbin/nologin

 2.设置密码

passwd ftpuser

3.拉取镜像

docker pull fauria/vsftpd

4.启动镜像

docker run -d -p 20:20 -p 21:21 -p 21100-21110:21100-21110 -v /home:/home/vsftpd -e FTP_USER=ftpuser -e FTP_PASS=123456 -e PASV_ADDRESS=192.168.0.100 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 -e LOCAL_UMASK=0 -e FILE_OPEN_MODE=0777 -e ANON_UMASK=0777 --name vsftpd fauria/vsftpd

 

  • -p 进行端口绑定映射
  • -v 进行文件目录的映射
  • FTP_UESR 和FTP_PASS如果设定了会在container的
    /etc/vsftpd/virtual_users.txt里面
  • PASV_ADDRESS指的的宿主机地址
  • PASV_MIN_PORT和PASV_MAX_PORT映射的是被动模式下端口使用范围
  • 必须在服务器的防火墙中开启20、21、22和21100/21110端口
  • LOCAL_UMASK=0 上传后文件的权限
  • FILE_OPEN_MODE=0777 上传后文件的权限
  • ANON_UMASK=0777 上传后文件的权限

5.关闭防火墙

systemctl stop firewalld.service 
systemctl disable firewalld.service

二、安装Nginx

1.拉取镜像

docker pull nginx

2.启动镜像

docker run --name mynginx -d -p 80:80  -v /home/ftpuser:/usr/share/nginx/html -d docker.io/nginx
  • -v 将宿主机的/home/ftpuser挂载在容器的/usr/share/nginx/html

3.设置文件权限

 chmod 777 /home/ftpuser/

 

你可能感兴趣的:(linux)