ショコラ
Pure-FTPd で FTPサーバーを立てるには?
「Pure-FTPd」でキメマス。
もっさん先輩
こちらのリンクを右クリックしてファイルをダウンロードできます。
curl -LO https://answorz.com/1943/docker-compose.yml
手順
ドッカーコンポーズで Pure-FTPdコンテナを起動する手順。
- docker-compose.yml をダウンロードします。
curl -LO https://answorz.com/1943/docker-compose.yml
- docker-compose.yml の PUBLICHOST に外部からアクセスできるホスト名を設定します。
sed -i -e "s/PUBLICHOST=127.0.0.1/PUBLICHOST=`hostname -I | cut -d ' ' -f1`/" docker-compose.yml
- Pure-FTPd を起動します。
docker-compose up -d
以上
ドッカーラン一発で Pure-FTPdコンテナを起動することもできます。
docker run \
--rm \
-d \
--name ftp \
-e PUBLICHOST=`hostname -I | cut -d ' ' -f1` \
-e FTP_PASSIVE_PORTS=30000:30099 \
-e FTP_USER_NAME=ftpuser \
-e FTP_USER_PASS=pass \
-e FTP_USER_HOME=/home/ftpuser/ \
-e FTP_MAX_CLIENTS=50 \
-e FTP_MAX_CONNECTIONS=5 \
-e "ADDED_FLAGS=-L 100000:5 -O clf:/var/log/pure-ftpd/pureftpd.log" \
-v /home/ftpuser/:/home/ftpuser/ \
-p 20-21:20-21 \
-p 30000-30099:30000-30099 \
stilliard/pure-ftpd:latest
1943/docker-compose.ymlの説明
version: '3'
services:
ftp:
image: stilliard/pure-ftpd:latest
environment:
- PUBLICHOST=127.0.0.1
- FTP_PASSIVE_PORTS=30000:30099
- FTP_USER_NAME=ftpuser
- FTP_USER_PASS=pass
- FTP_USER_HOME=/home/ftpuser/
- FTP_MAX_CLIENTS=50
- FTP_MAX_CONNECTIONS=5
- "ADDED_FLAGS=-L 100000:5 -O clf:/var/log/pure-ftpd/pureftpd.log"
volumes:
- /home/ftpuser/:/home/ftpuser/
ports:
- "20-21:20-21"
- "30000-30099:30000-30099"
注目するところは「PUBLICHOST」と「ADDED_FLAGS」です。
PUBLICHOST には外部からアクセスできるホスト名を設定します。
ADDED_FLAGS にはオプションを設定できます。「-L(表示するファイルの最大数)」はデフォルト1万と設定されていますが、1万を超えるファイルがありましたので10万に変更しました。「-O」でログを出力するようにしました。