zoukankan      html  css  js  c++  java
  • 使用docker搭建seafile服务器

    工作需要在单位和家里的不同电脑上同步指定文件夹及其内容。对比了一些解决方案,最终还是选择熟悉的seafile来做。
    需要按照官方文档进行seafile的安装,选择官方推荐的docker方式快速部署。
    由于网络因素,直接访问国外源非常慢甚至超时退出无法完成,所以我下面尝试替换成国内阿里云的源,实际体验速度提升非常明显。

    1.使用yum安装依赖包

    yum install -y yum-utils 
    device-mapper-persistent-data 
    lvm2 
    

    2.添加yum软件源后安装Docker

    yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 
    yum install docker-ce docker-ce-cli containerd.io 
    #启动docker
    systemctl start docker
    

    3.配置Docker国内镜像加速

    vi /etc/docker/daemon.json

    镜像加速器地址: https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
    打开以后你可以看见你的专属加速器地址xxxxxxxx.mirror.aliyuncs.com
    将其配置到daemon.json文件中:

    { "registry-mirrors": ["https://xxxxxxxx.mirror.aliyuncs.com"] }
    

    需重启docker服务:

    systemctl daemon-reload 
    systemctl restart docker
    

    4.使用docker pull拉取seafile镜像

    [root@alfredzhao-ecs01 ~]# docker pull seafileltd/seafile
    Using default tag: latest
    latest: Pulling from seafileltd/seafile
    1489501ea318: Pull complete 
    c197ac8352c5: Pull complete 
    Digest: sha256:f0d42312c8935973515213677619b3fed877c7276949ac18e01804565a21ba7e
    Status: Downloaded newer image for seafileltd/seafile:latest
    docker.io/seafileltd/seafile:latest
    

    注意:这里如果没有上一步配置合理的registry-mirrors,速度就会非常慢。

    5.使用docker run运行seafile服务

    docker run -d --name seafile 
      -e SEAFILE_SERVER_HOSTNAME=seafile.example.com 
      -e SEAFILE_ADMIN_EMAIL=me@example.com 
      -e SEAFILE_ADMIN_PASSWORD=your_password 
      -v /opt/seafile-data:/shared 
      -p 8000:8000 
      -p 8082:8082 
      seafileltd/seafile:latest 
    

    注意:这里端口的映射,早期文档给的是一个端口,而我们需要配置两个端口。服务器域名/邮箱/密码都按照真实情况设置即可。

    6.开启防火墙策略/安全组策略

    基本同上,根据实际需要修改创建seafile的参数即可,服务器域名可以去注册一个,如果没有,直接使用服务器的公网ip地址也可以。另外要检查服务器的防火墙设置是否打开了对应端口。
    firewall-cmd --zone=public --add-port=8000/tcp --permanent 
    firewall-cmd --zone=public --add-port=8082/tcp --permanent 
    
    firewall-cmd --reload 
    

    注意:如果是ECS环境,要同时放开安全组策略对应端口的限制。

    总结:最终我测试seafile在不同电脑之间同步指定文件夹,效果可以完全cover自己同步的需求。另外最大的感受是还没有太多的了解细节,就部署完成上线使用了,这主要得益于docker的优势。

  • 相关阅读:
    Symmetric Order
    Red and Black
    Sticks(递归经典)
    Pascal Library
    cantor的数表
    OJ 调试技巧:VS2010 中 通过设置编译参数定义宏,无需修改源文件重定向标准输入输出
    strcmp
    最短周期串
    字母重排
    codeblocks 单步调试
  • 原文地址:https://www.cnblogs.com/jyzhao/p/13974928.html
Copyright © 2011-2022 走看看