安装vsftpd
- 前提:安装docker服务
- 拉取镜像
#登陆私有库 docker login -u admin -p 私有库密码 http://8.134.59.62:8083 #查看私有库镜像列表 curl 8.134.59.62:8083/v2/_catalog #拉取镜像 docker pull 8.134.59.62:8083/vsftpd
3. 新建vsftpd挂载目录
#新建ftp数据存放目录 mkdir -p /mnt/ftp/data #新建ftp日志目录 mkdir -p /mnt/ftp/logs
4. 授权新建目录,含数据目录和日志目录
chmod -R 755 /mnt/ftp
5. 安装vsftpd
docker run -d -p 20:20 -p 21:21 -p 21100-21110:21100-21110 --restart=always --network host -v /mnt/ftp/data:/home/vsftpd -v /mnt/ftp/logs:/var/log -e FTP_USER=admin -e FTP_PASS=server~YZ2024 -e PASV_ADDRESS=47.122.62.251 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 --privileged --name ftp 8.134.59.62:8083/vsftpd
●—privileged:默认解释为—privileged=true,获取宿主机的root权限
●-e FTP_USER=admin :设置ftp的用户名为admin
●-e FTP_PASS=server~YZ2024:设置ftp的密码为server~YZ2024
●--restart=always:总是随docker服务自动启动
●--network host:使用宿主机的IP和端口号
● 映射 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 随机访问端口
●宿主机ip PASV_ADDRESS=47.122.62.251
6. 查看vsftpd是否成功
a. 查看容器日志是否启动成功
docker logs ftp
b.windows的cmd命令窗口telnet
telnet 47.122.62.251 21
c. 或者用ftp登录命令
windows进入cmd命令窗口,输入ftp 47.122.62.251 ,根据提示输入ftp用户名密码登录
常见问题处理
# 解决上传成功但是访问无权限问题 # 1.进入vsftp内部 docker exec -it ftp bash # 2.找到run-vsftpd.sh文件,默认文件目录:/usr/sbin/run-vsftpd.sh # 注释:chown -R ftp:ftp /home/vsftpd/ # 3.保存文件后运行 /usr/sbin/run-vsftpd.sh sh /usr/sbin/run-vsftpd.sh
本文来自博客园,作者:羊孩,转载请注明原文链接:https://www.cnblogs.com/sheepboy/p/18555239