1 概述
本文介绍如何使用docker创建sftp服务,从单用户和多用户两个方面进行介绍。镜像为:docker.io/atmoz/sftp
2 拉取镜像
注:公司镜像仓库已将docker.io/atmoz/sftp 镜像存到镜像库中
docker pull docker.io/atmoz/sftp
3 创建容器
3.1 使用单sftp用户
3.1.1 运行容器
docker run --restart=always -v /mvtech/sftp_root/:/home -p 2222:22 -d docker.io/atmoz/sftp mvtechsftp:mvtech123:1001
3.1.2 本地映射目录创建使用文件夹
1 进入根目录
cd /mvtech/sftp_root/mvtechsftp/
2 创建upload目录
mkdir -p upload
3 赋权
chmod 777 upload
3.1.3 验证
使用winscp客户端登陆,向upload文件夹中上传文件,并删除文件。若没问题。则sftp配置完毕
3.2 创建多用户sftp
3.2.1 在本地创建配置文件
创建文件:/etc/sftp.conf 内容格式:用户名:密码:用户id:组id
[root@node69 mvtechsftp]# cat /etc/sftp.conf
eusftp:mvtech123:1001:100
dusftp:mvtech123:1002:100
mvtechsftp:mvtech123:1003:100
3.2.2 运行容器
docker run -itd --restart=always -v /etc/sftp.conf:/etc/sftp/users.conf:ro -v /mvtech/sftp_root:/home --privileged -p 3333:22 --name=sftp docker.io/atmoz/sftp
3.2.3 创建每个用户的使用目录
以eusftp用户为例
1 进入根目录
cd /mvtech/sftp_root/eusftp/
2 创建upload目录
mkdir -p upload
3 赋权
chmod 777 upload
3.2.4 验证
使用winscp客户端登陆,向upload文件夹中上传文件,并删除文件。若没问题。则sftp配置完毕