Open365
来自ling
安装
下载
https://github.com/Open365/Open365
Open365 Installer
注意虚拟机内存要设置到8g
将下载内容放到 /open365
apt-get install python3-pip #如果不能安装,需要切换出阿里的镜像源 pip3 install --upgrade pip apt-get install libmysqlclient-dev python3-dev pip3 install mysqlclient pip3 install pymongo pip3 install ldap3 pip3 install requests
./open365 install
这里有个坑,需要替换ssl.crt
cd /open365/environments/volumes/ssl rm -f ssl.crt rm -f ssl.key docker restart 02a777e7a829 cp snakeoil.crt ssl.crt cp snakeoil.key ssl.key docker restart 02a777e7a829
创建账户
./open365 create-domain open365.io ./open365 user-create root --firstname wang --surname bo --password 111111 --email 102010cncger@sina.com
使用root@....登录
Overview
This is the main Open365 installer. It installs all the required components to run Open365 in your computer.
Requirements
Docker
Docker-compose (1.3 or higher)
Python3
Python packages
Debian / Ubuntu:
$ apt-get install libmysqlclient-dev python3-dev
$ pip3 install mysqlclient
$ pip3 install pymongo
$ pip3 install ldap3
$ pip3 install requests
Fedora
$ pip3 install pymongo
$ pip3 install ldap3
$ pip3 install requests
$ yum install python3-mysql
We require SELinux to be disabled.
How to use it
Install Open365
Execute the next command and follow the instructions:
$ sudo ./open365 install
This will download all the required docker images, and start running open365. In this beta release these images can occupy more than 15gb of space. We are in the process of reducing this to a respectable number.
Uninstall Open365
If you want to uninstall Open365, you just need to run:
$ sudo ./open365 destroy
This command will clean everything related with Open365.
Create users and domain
If you want to create new users run the following command:
$ sudo ./open365 user-create USERNAME --firstname FIRSTNAME --surname SURNAME --password PASS --email USER_EMAIL
For more information about this command run:
$ sudo ./open365 user-create -h
Since it is possible to create users in different domains, there is an option to create new domains:
$ sudo ./open365 create-domain DOMAIN
yml
applications:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
- EYEOS_DEVELOPMENT_MODE=false
image: open365/eyeos-application:latest
ports:
- 7946/tcp
- 7946/udp
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- rabbitmq:rabbit.service.consul
- mongodb:mongo.service.consul
appservice:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/appservice.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
- EYEOS_DEVELOPMENT_MODE=false
image: open365/eyeos-appservice:latest
ports:
- 7946/tcp
- 7946/udp
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
- /home/wangbo/Open365-master/environments/volumes/docker-swarm:/root/.docker
- /home/wangbo/Open365-master/environments/volumes/multidocker-info:/var/service/multidocker-info
links:
- rabbitmq:rabbit.service.consul
- mongodb:mongo.service.consul
appservicecleaner:
command: /var/service/src/appcleaner.sh
image: open365/eyeos-appservice:latest
volumes:
- /var/run/docker.sock:/var/run/docker.sock
authentication:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/authentication.envars
environment:
- EYEOS_DEVELOPMENT_MODE=false
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/eyeos-authentication:latest
ports:
- 7946/tcp
- 7946/udp
restart: always
volumes:
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/volumes/license:/var/service/license
links:
- rabbitmq:rabbit.service.consul
- mongodb:mongo.service.consul
- ldap:ldap.service.consul
eyeosChat:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_DEVELOPMENT_MODE=false
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/eyeos-eyeos-chat:latest
ports:
- 7946/tcp
- 7946/udp
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
eyeosDesktop:
env_file:
- ../../envars/general.envars
- ../../envars/desktop.envars
image: open365/eyeos-eyedesktop:latest
eyeosLogin:
env_file:
- ../../envars/general.envars
- ../../envars/eyeoslogin.envars
image: open365/eyeos-login:latest
filesCdnServer:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
- EYEOS_DEVELOPMENT_MODE=false
image: open365/eyeos-files-cdn-server:latest
ports:
- 7946/tcp
- 7946/udp
- 0.0.0.0:8090:8090
privileged: true
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/rawFS:/mnt/rawFS
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- mongodb:mongo.service.consul
- redis:redis.service.consul
httpRelayServer:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_DEVELOPMENT_MODE=false
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/eyeos-http-relay-server:latest
ports:
- 7946/tcp
- 7946/udp
- 0.0.0.0:1080:1080
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- rabbitmq:rabbit.service.consul
httpToBus:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_DEVELOPMENT_MODE=false
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/eyeos-httptobusserver:latest
ports:
- 7946/tcp
- 7946/udp
- 0.0.0.0:8196:8196
privileged: true
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- rabbitmq:rabbit.service.consul
- mongodb:mongo.service.consul
jitsi:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/jitsi.envars
image: open365/docker-jitsi:latest
privileged: true
restart: always
ldap:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_DEVELOPMENT_MODE=false
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
- LDAP_LOG_LEVEL=256
- LOG_CONNECTION_MAX_RETRY=1000
image: open365/ldap-discovery:latest
ports:
- 0.0.0.0:389:389
- 7946/tcp
- 7946/udp
restart: always
volumes:
- /home/wangbo/Open365-master/data/ldap:/var/lib/ldap
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
mailserver:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/mailserver.envars
environment:
- EYEOS_DEVELOPMENT_MODE=false
image: open365/mailserver:latest
ports:
- 7946/tcp
- 7946/udp
- 0.0.0.0:25:25
- 0.0.0.0:143:143
- 0.0.0.0:587:587
- 0.0.0.0:993:993
privileged: true
restart: always
volumes:
- /home/wangbo/Open365-master/environments/volumes/ssl:/srv/ssl
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/resolv.conf
- /home/wangbo/Open365-master/rawFS:/mnt/rawFS
links:
- mysql:mysql.service.consul
- ldap:ldap.service.consul
mongodb:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/mongo-discovery:latest
ports:
- 0.0.0.0:27017:27017
- 7946/tcp
- 7946/udp
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/data/db:/data/db
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
mysql:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/mysql.envars
image: open365/mysql-discovery:latest
ports:
- 7946/tcp
- 7946/udp
- 0.0.0.0:3306:3306
privileged: true
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/data/mysql:/var/lib/mysql
open365Gimp:
command: sleep infinity
image: open365/open365-gimp:latest
open365Mail:
command: sleep infinity
image: open365/open365-mail:latest
open365Office:
command: sleep infinity
image: open365/open365-office:latest
pimServer:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/pimserver.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: 'open365/pim-server:latest'
ports:
- 0.0.0.0:5232:5232
- 7946/tcp
- 7946/udp
restart: always
volumes:
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
- '/mnt/data/pim:/data/collections'
- /var/run/docker.sock:/var/run/docker.sock
presenceService:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_DEVELOPMENT_MODE=false
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/eyeos-presence-service:latest
ports:
- 7946/tcp
- 7946/udp
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- rabbitmq:rabbit.service.consul
- mongodb:mongo.service.consul
principalService:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/principalservice.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
- EYEOS_DEVELOPMENT_MODE=false
image: open365/eyeos-principalservice:latest
ports:
- 7946/tcp
- 7946/udp
privileged: true
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/rawFS:/mnt/rawFS
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- rabbitmq:rabbit.service.consul
- mongodb:mongo.service.consul
proxy:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/proxy.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
- EYEOS_DEVELOPMENT_MODE=false
extra_hosts:
- signup.service.consul:172.17.0.1
image: open365/eyeos-proxy:latest
ports:
- 7946/tcp
- 7946/udp
- 0.0.0.0:80:80
- 0.0.0.0:443:443
privileged: true
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/rawFS:/mnt/rawFS
- /home/wangbo/Open365-master/environments/volumes/ssl:/etc/nginx/certificate
- /home/wangbo/Open365-master/environments/volumes/signup:/usr/share/nginx/html/signup
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
volumes_from:
- eyeosLogin
- eyeosDesktop
links:
- seafileServer:seafileServer.service.consul
- eyeosChat:chat.service.consul
- filesCdnServer:cdn.service.consul
- httpToBus:camel.service.consul
- rabbitmq:rabbit.service.consul
- mongodb:mongo.service.consul
- websockify:websockify.service.consul
- staticCache:cache.service.consul
- httpRelayServer:httprelay.service.consul
- jitsi:jitsi.service.consul
rabbitmq:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/rabbitmq.envars
environment:
- EYEOS_DEVELOPMENT_MODE=false
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
- DISCOVERY_HOSTS_FILE_PATH=/hosts/hosts.serf
- RABBITMQ_AUTH_HOST=172.17.0.1
image: open365/rabbitmq-discovery:latest
ports:
- 7946/tcp
- 7946/udp
- 0.0.0.0:5672:5672
- 0.0.0.0:15672:15672
- 0.0.0.0:61613:61613
- 0.0.0.0:15674:15674
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
- /home/wangbo/Open365-master/environments/compose_files/latest/hosts:/hosts/
rabbitmqAuth:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_RABBITMQ_AUTH_BACKEND_HTTP_BIND_ADDRESS=0.0.0.0
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/eyeos-rabbitmq-auth-backend-http:latest
ports:
- 7946/tcp
- 7946/udp
- 0.0.0.0:7108:7108
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- rabbitmq:rabbit.service.consul
redis:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- DOCKER_FIX_ISSUE_14203=true
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/redis-discovery:latest
ports:
- 7946/tcp
- 7946/udp
- 0.0.0.0:6379:6379
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
seafileServer:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/seafileServer.envars
- ../../envars/mysql.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/docker-seafile:latest
ports:
- 0.0.0.0:8000:8000
- 0.0.0.0:8080:8080
- 0.0.0.0:8082:8082
privileged: true
restart: always
volumes:
- /home/wangbo/Open365-master/data/seafileRawData:/opt/seafile/seafile-data
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- mysql:mysql.service.consul
- authentication:authentication.service.consul
- ldap:ldap.service.consul
staticCache:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/staticCache.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/eyeos-static-cache:latest
ports:
- 7946/tcp
- 7946/udp
- 9909:9909
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- redis:redis.service.consul
sync:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/seafileServer.envars
- ../../envars/seafileSync.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/eyeos-sync:latest
privileged: true
restart: always
volumes:
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- rabbitmq:rabbit.service.consul
- proxy:proxy.service.consul
- ldap:ldap.service.consul
userGuestStatusPollingService:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
- EYEOS_DEVELOPMENT_MODE=false
image: open365/eyeos-user-guest-status-polling-service:latest
ports:
- 7946/tcp
- 7946/udp
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- rabbitmq:rabbit.service.consul
- mongodb:mongo.service.consul
websockify:
dns:
- 127.0.0.1
env_file:
- ../../envars/general.envars
- ../../envars/websockify.envars
environment:
- EYEOS_RUN_SERVER_RESOLV=/open365/resolv.conf
image: open365/eyeos-websockify:latest
ports:
- 7946/tcp
- 7946/udp
- 8100:8100
- 8102:8102
- 8104:8104
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/wangbo/Open365-master/environments/compose_files/latest/resolv.conf:/open365/resolv.conf
links:
- mongodb:mongo.service.consul
- redis:redis.service.consul
错误日志
虚拟机内存设置8g或以上
Command ['docker-compose', '--file', '/home/wangbo/Open365-master/environments/compose_files/latest/docker-compose-all.yml', '-p', 'eyeos', 'pull'] exited successfully
Executing: ['docker-compose', '--file', '/home/wangbo/Open365-master/environments/compose_files/latest/docker-compose-all.yml', '-p', 'eyeos', 'up', '-d']
WARNING: The DOCKER_CLIENT_TIMEOUT environment variable is deprecated. Please use COMPOSE_HTTP_TIMEOUT instead.
Recreating eyeos_jitsi_1
eyeos_open365Office_1 is up-to-date
eyeos_open365Gimp_1 is up-to-date
Recreating eyeos_pimServer_1
Recreating eyeos_mysql_1
Recreating eyeos_redis_1
Recreating eyeos_staticCache_1
Recreating eyeos_eyeosDesktop_1
eyeos_open365Mail_1 is up-to-date
Recreating eyeos_ldap_1
Recreating eyeos_mailserver_1
eyeos_appservicecleaner_1 is up-to-date
Recreating eyeos_eyeosChat_1
Recreating eyeos_mongodb_1
Recreating eyeos_websockify_1
Recreating eyeos_filesCdnServer_1
Recreating eyeos_rabbitmq_1
Recreating eyeos_principalService_1
Recreating eyeos_appservice_1
ERROR: containerd: container not started
Command ['docker-compose', '--file', '/home/wangbo/Open365-master/environments/compose_files/latest/docker-compose-all.yml', '-p', 'eyeos', 'up', '-d'] failed with exit status 1
Traceback (most recent call last):
File "./open365", line 16, in <module>
router.route(*sys.argv[1:])
File "/home/wangbo/Open365-master/lib/SubcommandRouter.py", line 25, in route
instance.execute(*args)
File "/home/wangbo/Open365-master/lib/Subcommands/Install.py", line 89, in execute
docker_compose.exec('up')
File "/home/wangbo/Open365-master/lib/DockerComposeExecutor.py", line 35, in exec
self.subprocess.check_call(args, cwd=self.cwd, env=new_env)
File "/usr/lib/python3.5/subprocess.py", line 581, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['docker-compose', '--file', '/home/wangbo/Open365-master/environments/compose_files/latest/docker-compose-all.yml', '-p', 'eyeos', 'up', '-d']' returned non-zero exit status 1
root@ubuntu:/home/wangbo/Open365-master#