一.本地版本
systemctl start xxx
[Unit]
Description=gofastdfs service
Wants=network.target
[Service]
PIDFile=/home/gofastdfs/conf/app.pid
WorkingDirectory=/root/go-fastdfs/src/go-fastdfs-master
Environment="GO_FASTDFS_DIR=/root/go-fastdfs/src/go-fastdfs-master"
ExecStart=/root/go-fastdfs/src/go-fastdfs-master/fileserver server
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
Restart=always
[Install]
WantedBy=multi-user.target
二. docker版本
FROM golang:1.21.0-alpine3.18
ENV GO_FASTDFS_DIR /usr/local/go-fastdfs
WORKDIR $GO_FASTDFS_DIR
COPY ./fileserver .
RUN set -xe; \
mkdir -p $GO_FASTDFS_DIR; \
mkdir -p $GO_FASTDFS_DIR/conf; \
mkdir -p $GO_FASTDFS_DIR/data; \
mkdir -p $GO_FASTDFS_DIR/files; \
mkdir -p $GO_FASTDFS_DIR/log; \
chmod +x $GO_FASTDFS_DIR/fileserver;
EXPOSE 8080
CMD ["./fileserver", "server"]