DOCKER 安装Nginx+SFTP 容器

本文介绍了如何在Docker中安装SFTP和Nginx容器,用于实现SpringBoot应用的SFTP文件上传、下载和删除功能。首先通过Docker拉取并启动sftp镜像,设置用户权限和端口映射。接着拉取并运行nginx镜像,将SFTP的上传目录与Nginx静态文件目录挂载。最后,通过Nginx代理访问SFTP上传的文件。

一、场景:

SpringBoot实现SFTP文件上传、下载、删除、预览等功能。

 

二、准备环境:

1、Docker安装SFTP,如下:

拉取sftp镜像

docker pull atmoz/sftp

启动sftp容器

docker run --name mysftp -v /home/upload:/home/admin/upload --privileged=true -p 2294:22 -d atmoz/sftp admin:admin:upload

  • –name mysftp  容器名称
  • admin:admin:::upload  其中admin为用户名,pass为密码,upload为上传的文件会保存到容器里面的/home/foo/upload目录里面   --这里我遇到一个问题就是改成:admin:123456:upload   启动之后,我用客户端无法连接,但密码改成:admin就可以连接了。
  • -p 2294:22  将宿主机的22端口映射到容器的22端口,这样方位宿主机的22端口则会转发到容器的22端口上
  • -d atmoz/sftp  使用dockup hub中的atmoz/sftp镜像创建容器

2、Docker安装Nginx

拉取nginx镜像

docker pull nginx

启动nginx容器

docker run --name=nginx -d -p 8086:80 -v /home/upload:/usr/share/nginx/html nginx

注:这里注意一个小细节,Nginx和SFTP目录挂载"绿色"部分,这个保持一致,这个目录可以自定义。

 

3、代码

SFTP文件上传、下载、删除的具体代码这里省略,如果需要可以联系我,给我留言。

 

4、测试SFTP连接

/home/upload目录下上传文件后,会自动映射到Nginx代理目录下,通过WEB访问就可以看到了。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值