FROM alpine:3.7
ADD http://dl-4.alpinelinux.org/alpine/edge/testing/x86_64/pure-ftpd-1.0.47-r0.apk /root
RUN apk add --allow-untrusted /root/pure-ftpd-1.0.47-r0.apk  
RUN mkdir /ftpconf /ftp && \
    chmod 0777 /ftp && \
    cp /etc/pure-ftpd.conf /ftpconf && \
    touch /ftpconf/pure-ftpd.pdb

EXPOSE 21 30000:30010
VOLUME  /ftpconf /ftp
CMD pure-ftpd -lpuredb:/ftpconf/pure-ftpd.pdb -lunix -A -c 5 -C 5 -p 30000:30010
#docker build -t test .
#docker run  -d --privileged=true -p 21:21 -p 30000-30010:30000-30010  -v /ftpconf:/ftpconf -v /ftp:/ftp --name=ftpd test
#docker exec -it ftpd  sh -l
#pure-pw useradd jack -u ftp -D /ftp -m
#chmod 0777 /ftp
#pure-pw mkdb /ftpconf/pure-ftpd.pdb

-v 物理机目录:容器内目录

有的时候,确实不想重构容器,但是程序代码更新了怎么办呢?

也许是我的传统思维在作怪,还是用ftp上传程序代码。

几经调试,终于能在docker下使用pureftpd了。

有一个问题,我在alpine中运行pureftpd可以使用windows映射网络驱动器,在docker中运行pureftpd就不能映射成功,但是ftp客户端都可以正常使用。

05-19 22:57