vicalloy / outline-docker-compose Goto Github PK
View Code? Open in Web Editor NEWInstall a self-hosted Outline wiki instance in a couple of minutes
License: BSD 3-Clause "New" or "Revised" License
Install a self-hosted Outline wiki instance in a couple of minutes
License: BSD 3-Clause "New" or "Revised" License
我设置的服务器的ip地址和端口号,2个设置的地方都是设置的这个,然后就报错无法启动
ERROR: The server does not support SSL connections
yarn run v1.22.18
$ sequelize db:migrate --env=production-ssl-disabled
Sequelize CLI [Node: 16.14.2, CLI: 6.4.1, ORM: 6.20.1]
Loaded configuration file "server/config/database.json".
Using environment "production-ssl-disabled".
No migrations were executed, database schema was already up to date.
Done in 0.85s.
yarn run v1.22.18
$ node ./build/server/index.js
{"label":"lifecycle","level":"info","message":"Note: Restricting process count to 1 due to use of collaborative service"}
{"label":"lifecycle","level":"info","message":"\nIs your team enjoying Outline? Consider supporting future development by sponsoring the project:\n\nhttps://github.com/sponsors/outline\n"}
ERROR: The server does not support SSL connections
error Command failed with exit code 1.
node:child_process:828
err = new Error(msg);
^
Error: Command failed: yarn sequelize db:migrate:status
ERROR: The server does not support SSL connections
error Command failed with exit code 1.
at checkExecSyncError (node:child_process:828:11)
at execSync (node:child_process:902:15)
at checkPendingMigrations (/opt/outline/build/server/utils/startup.js:25:53)
at master (/opt/outline/build/server/index.js:68:39)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async throng (/opt/outline/node_modules/throng/lib/throng.js:31:3) {
status: 1,
signal: null,
output: [
null,
Buffer(303) [Uint8Array] [
36, 32, 47, 111, 112, 116, 47, 111, 117, 116, 108, 105,
110, 101, 47, 110, 111, 100, 101, 95, 109, 111, 100, 117,
108, 101, 115, 47, 46, 98, 105, 110, 47, 115, 101, 113,
117, 101, 108, 105, 122, 101, 32, 100, 98, 58, 109, 105,
103, 114, 97, 116, 101, 58, 115, 116, 97, 116, 117, 115,
10, 10, 27, 91, 52, 109, 83, 101, 113, 117, 101, 108,
105, 122, 101, 32, 67, 76, 73, 32, 91, 78, 111, 100,
101, 58, 32, 49, 54, 46, 49, 52, 46, 50, 44, 32,
67, 76, 73, 58,
... 203 more items
],
Buffer(100) [Uint8Array] [
27, 91, 51, 49, 109, 69, 82, 82, 79, 82, 58, 27,
91, 51, 57, 109, 32, 84, 104, 101, 32, 115, 101, 114,
118, 101, 114, 32, 100, 111, 101, 115, 32, 110, 111, 116,
32, 115, 117, 112, 112, 111, 114, 116, 32, 83, 83, 76,
32, 99, 111, 110, 110, 101, 99, 116, 105, 111, 110, 115,
10, 101, 114, 114, 111, 114, 32, 67, 111, 109, 109, 97,
110, 100, 32, 102, 97, 105, 108, 101, 100, 32, 119, 105,
116, 104, 32, 101, 120, 105, 116, 32, 99, 111, 100, 101,
32, 49, 46, 10
]
],
pid: 71,
stdout: Buffer(303) [Uint8Array] [
36, 32, 47, 111, 112, 116, 47, 111, 117, 116, 108, 105,
110, 101, 47, 110, 111, 100, 101, 95, 109, 111, 100, 117,
108, 101, 115, 47, 46, 98, 105, 110, 47, 115, 101, 113,
117, 101, 108, 105, 122, 101, 32, 100, 98, 58, 109, 105,
103, 114, 97, 116, 101, 58, 115, 116, 97, 116, 117, 115,
10, 10, 27, 91, 52, 109, 83, 101, 113, 117, 101, 108,
105, 122, 101, 32, 67, 76, 73, 32, 91, 78, 111, 100,
101, 58, 32, 49, 54, 46, 49, 52, 46, 50, 44, 32,
67, 76, 73, 58,
... 203 more items
],
stderr: Buffer(100) [Uint8Array] [
27, 91, 51, 49, 109, 69, 82, 82, 79, 82, 58, 27,
91, 51, 57, 109, 32, 84, 104, 101, 32, 115, 101, 114,
118, 101, 114, 32, 100, 111, 101, 115, 32, 110, 111, 116,
32, 115, 117, 112, 112, 111, 114, 116, 32, 83, 83, 76,
32, 99, 111, 110, 110, 101, 99, 116, 105, 111, 110, 115,
10, 101, 114, 114, 111, 114, 32, 67, 111, 109, 109, 97,
110, 100, 32, 102, 97, 105, 108, 101, 100, 32, 119, 105,
116, 104, 32, 101, 120, 105, 116, 32, 99, 111, 100, 101,
32, 49, 46, 10
]
}
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
outline部署在本地hostA服务器,映射端口IP:8888
开启内网穿透映射到公网IP:8888
打开界面欢迎界面正常,点击登录后就会跳转至hostAip:8888
尝试修改config ..URL=127.0.0.1
但会只有本机可访问。映射后还是指向127.0.0.1:8888
看到有0.62的了, 当时还是0.61
$ make install
......
......
dcbe792704e5: Pull complete
7c51bad60610: Pull complete
eb1b06d22376: Pull complete
Digest: sha256:4acd61f8c19dd1260f010b02626b306540b6ed8882a1f598fdf69a3e8f9ffa1c
Status: Downloaded newer image for minio/mc:RELEASE.2022-11-17T21-20-39Z
Pulling wk-outline (outlinewiki/outline:0.67.0)...
ERROR: manifest for outlinewiki/outline:0.67.0 not found: manifest unknown: manifest unknown
make: *** [start] Error 1
Warning As of this release all documents edits are sent through the collaborative process using websockets, this results in a much better editor experience with full support for realtime collaborative editing but requires websockets. If your self-hosted setup was managing without websocket connections editing will no longer work with this release.
您好,Outline 0.64.0有修改环境变量,outline容器无法正常运行,如果您有空可以更新下就好了,目前跑0.63.0是正常的,感谢
https://github.com/outline/outline/releases/tag/v0.64.0
Unless I am mistaken as of now the "Full width" option is on a per-page basis.
Personally, I want every page to be full width by default and have to remember to check this option on each page I create.
It would be nice if this boolean option could be in a user profile and the default value is taken from there. It can still be over riden on a per page basis.
不论如何修改用户信息,在Outline中都无法识别到管理员角色,我无法将所有数据导出进行备份,这个问题是Outline的问题还是认证授权服务的问题呢
conf.sh配置:
# The url used to vist this web site.
URL=http://xxx.xxx.xxx.xxx:8888
# The default interface language. See translate.getoutline.com for a list of
# available language codes and their rough percentage translated.
DEFAULT_LANGUAGE=zh_CN
# https://docs.djangoproject.com/en/2.2/ref/settings/#language-code
LANGUAGE_CODE=en-us
# https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
TIME_ZONE=UTC
FORCE_HTTPS=false
# The domain in you email.
# Comma separated list of domains to be allowed (optional).
# If not set, the first user's domain is allowed by default.
ALLOWED_DOMAINS=
# Nginx
# The nginx bind ip and port.
# If you use ip address to access outline, this ip and port should be same as the URL.
# If this server behind a proxy(nginx), you can bind to `127.0.0.1`.
HTTP_IP=0.0.0.0
HTTP_PORT_IP=8888
# Docker
# If you server behind a proxy(nginx), and the proxy created by docker. You can use the proxy's network. Set the `NETWORKS` to proxy's network name, and set `NETWORKS_EXTERNAL` to `true` .
# The sample config for host nginx can be find in `config/sample/nginx_outline.conf`.
NETWORKS=outline
NETWORKS_EXTERNAL=false
# Secret keys, update by script.
# You shouldn't edit it.
MINIO_ACCESS_KEY=bfb3e19b991fe5ee
MINIO_SECRET_KEY=b732dbaa16acf768d615454ee6c8ec71d6b165df16c54187d9c0ee3b074de7ff
OIDC_CLIENT_SECRET=b732dbaa16acf768d615454ee6c8ec71d6b165df16c54187d9c0ee3b074de7ff
OUTLINE_SECRET_KEY=49b40297035f63fa85268789632fcda9fa95170d0fdca4bc0c223bda99145eb3
OUTLINE_UTILS_SECRET=b931674c72e807695c9aa30a3af568a611c85bf0720f676c618162bf0b0b84c1
DJANGO_SECRET_KEY=f7aa9b366378ba5725d16cc1f2fa7bf178c4bfd565be29b7532a0130c4c33bf2
$ docker-compose top
outline-docker-compose_wk-minio_1
UID PID PPID C STIME TTY TIME CMD
------------------------------------------------------------------------------
root 422932 422897 2 02:38 ? 00:00:00 minio server /minio_root
outline-docker-compose_wk-nginx_1
UID PID PPID C STIME TTY TIME CMD
----------------------------------------------------------------------------------------------------
root 423580 423505 0 02:38 ? 00:00:00 nginx: master process nginx -g daemon off;
systemd+ 423756 423580 0 02:38 ? 00:00:00 nginx: worker process
systemd+ 423757 423580 0 02:38 ? 00:00:00 nginx: worker process
systemd+ 423758 423580 0 02:38 ? 00:00:00 nginx: worker process
systemd+ 423759 423580 0 02:38 ? 00:00:00 nginx: worker process
ERROR: Container 0188c31dab7b89627960faeb166ff0ffda82189918c8f7a3aecfe38cca5ccdc9 is restarting, wait until the container is running
I really like this project. As an alternative to OIDC server, the authelia server would be nice.
Listening on http://localhost:3000 。nginx配置别的服务器地址也能正常跳转,就是outline 访问不了
I am trying to upload an export from the cloud version of Outline.
The issue is that it doesn't work and I can get a hint of the issue when looking at wk-outline
logs:
{
"error":"Inaccessible host: `127.0.0.1' at port `8888'. This service may not be available in the `xx-xxxx-x' region.",
"stack":"UnknownEndpoint: Inaccessible host: `127.0.0.1' at port `8888'. This service may not be available in the `xx-xxxx-x' region.\n at Request.ENOTFOUND_ERROR (/opt/outline/node_modules/aws-sdk/lib/event_listeners.js:557:46)\n at Request.callListeners (/opt/outline/node_modules/aws-sdk/lib/sequential_executor.js:106:20)\n at Request.emit (/opt/outline/node_modules/aws-sdk/lib/sequential_executor.js:78:10)\n at Request.emit (/opt/outline/node_modules/aws-sdk/lib/request.js:686:14)\n at error (/opt/outline/node_modules/aws-sdk/lib/event_listeners.js:389:22)\n at ClientRequest.<anonymous> (/opt/outline/node_modules/aws-sdk/lib/http/node.js:99:9)\n at ClientRequest.emit (node:events:526:28)\n at ClientRequest.emit (node:domain:475:12)\n at Socket.socketErrorListener (node:_http_client:442:9)\n at Socket.emit (node:events:526:28)\n at Socket.emit (node:domain:475:12)\n at emitErrorNT (node:internal/streams/destroy:157:8)\n at emitErrorCloseNT (node:internal/streams/destroy:122:3)\n at processTicksAndRejections (node:internal/process/task_queues:83:21)",
"level":"error",
"message":"Error getting file from S3 by key"
}{
"error":"Failed to fetch data for import from storage.",
"stack":"InternalServerError: Failed to fetch data for import from storage.\n at InternalError (/opt/outline/build/server/errors.js:35:34)\n at ImportMarkdownZipTask.perform (/opt/outline/build/server/queues/tasks/ImportTask.js:55:41)\n at processTicksAndRejections (node:internal/process/task_queues:96:5)\n at async Queue.<anonymous> (/opt/outline/build/server/services/worker.js:132:7)",
"level":"error",
"message":"Error processing task in ImportMarkdownZipTask"
}
I think that importing an Outline exports works like this:
It looks like a config error. Is there a variable to define the minio's server side URL? It should be something like http://wk-minio:9000
config.sh中修改TIME_ZONE=UTC+8后,wk-oidc-server启动失败
开启ssl后,无法编辑文章内容,关闭ssl后一切正常。ssl在宝塔中配置的。
`server
{
listen 443 ssl http2;
server_name wiki.ssyqq.cn;
index index.php index.html index.htm;
client_max_body_size 20m;
#SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
#error_page 404/404.html;
ssl_certificate /www/server/panel/vhost/cert/wiki.ssyqq.cn/fullchain.pem;
ssl_certificate_key /www/server/panel/vhost/cert/wiki.ssyqq.cn/privkey.pem;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
add_header Strict-Transport-Security "max-age=31536000";
error_page 497 https://$host$request_uri;
#SSL-END
location / {
proxy_pass http://127.0.0.1:9999; # 转发规则
proxy_set_header Host $host; # 修改转发请求头,让8080端口的应用可以受到真实的请求
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade; #此处配置 上面定义的变量
# proxy_set_header Connection $connection_upgrade;
}
location /realtime {
proxy_pass http://127.0.0.1:9999/realtime;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
proxy_read_timeout 86400;
}
#一键申请SSL证书验证目录相关设置
location ~ \.well-known{
allow all;
}
}`
接受权限时点击accept后一直转圈,然后显示Failed
I am trying to install this on my QNAP NAS. For this, I basically created a deployment on my linux PC and from there I picked the docker-compose file and fixed it for my NAS and installed it there. On the NAS I have an NPM reverse proxy to resolve subdomain and then the Nginx proxy which comes with this stack.
I am able to see the Sign in with OpenID page on outline with my URL. I get redirected to /uc
and can login there, but I get authentication failure from outline. Here is the log message,
ERR Error during authentication | error=Failed to obtain access token stack=InternalOAuthError: Failed to obtain access token
at OAuth2Strategy._createOAuthError (/opt/outline/node_modules/passport-oauth2/lib/strategy.js:423:17)
at /opt/outline/node_modules/passport-oauth2/lib/strategy.js:177:45
at /opt/outline/node_modules/oauth/lib/oauth2.js:191:18
at ClientRequest.<anonymous> (/opt/outline/node_modules/oauth/lib/oauth2.js:162:5)
at ClientRequest.emit (node:events:526:28)
at ClientRequest.emit (node:domain:475:12)
at Socket.socketErrorListener (node:_http_client:442:9)
at Socket.emit (node:events:526:28)
at Socket.emit (node:domain:475:12)
at emitErrorNT (node:internal/streams/destroy:157:8)
at emitErrorCloseNT (node:internal/streams/destroy:122:3)
at processTicksAndRejections (node:internal/process/task_queues:83:21)
Here is the log from Nginx
10.0.3.6 - - [02/Mar/2023:11:31:51 +0000] "GET /auth/oidc HTTP/1.1" 302 5 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36" "192.168.0.1"
10.0.3.6 - - [02/Mar/2023:11:31:51 +0000] "GET /uc/oauth/authorize/?response_type=code&redirect_uri=http%3A%2F%2Fsubdomain.domain.com%2Fauth%2Foidc.callback&scope=openid%20profile%20email&state=9e386e6e1ebc8227&client_id=050984 HTTP/1.1" 302 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36" "192.168.0.1"
10.0.3.6 - - [02/Mar/2023:11:31:51 +0000] "GET /auth/oidc.callback?code=101f5f764c1140f28abcd0d56fedxxxx&state=9e386e6e1ebcxxxx HTTP/1.1" 302 69 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36" "192.168.0.1"
10.0.3.6 - - [02/Mar/2023:11:31:51 +0000] "GET /?notice=auth-error HTTP/1.1" 200 1158 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36" "192.168.0.1"
10.0.3.6 - - [02/Mar/2023:11:31:51 +0000] "POST /api/auth.config HTTP/1.1" 200 100 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36" "192.168.0.1"
10.0.3.6 - - [02/Mar/2023:11:31:53 +0000] "GET /static/service-worker.js HTTP/1.1" 200 11540 "https://outline.gauravk.in/static/service-worker.js" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36" "192.168.0.1"
Here is the nginx config
server {
listen 80;
client_max_body_size 100m;
# Proxy requests to the bucket "outline" to MinIO server running on port 9000
location /outline-bucket {
include /etc/nginx/conf.d/include/proxy.conf;
proxy_pass http://wk-minio:9000;
}
# Proxy any other request to the application server running on port 9001
location / {
include /etc/nginx/conf.d/include/proxy.conf;
proxy_pass http://wk-outline:3000;
}
# Static file FOR OIDC Server
location /uc/static {
alias /uc/static_root;
}
# OIDC Server
location /uc {
include /etc/nginx/conf.d/include/proxy.conf;
proxy_set_header SCRIPT_NAME /uc;
proxy_pass http://wk-oidc-server:8000;
}
}
I can see the auth code and state in the Nginx log, but it looks like these don't get passed to outline. I've spent 2 days trying to figure out what could be wrong. I will greatly appreciate any help in getting this to work!
请问ls: cannot access '/docker-entrypoint-initdb.d/': Operation not permitted 这个应该怎么处理, 手动新建目录吗
Hello!
Thank you for your script, but when I'm trying to start it, all containers is running except one: Minio/mc
Logs contains the following information:
Added minio
successfully.
Bucket created successfully minio/outline-bucket
.
Access permission for minio/outline-bucket
is set to download
Added minio
successfully.
mc: Unable to make bucket minio/outline-bucket
. Your previous request to create the named bucket succeeded and you already own it.
Access permission for minio/outline-bucket
is set to download
Could you help me with that issue?
删除env.outline中SLACK_VERIFICATION_TOKEN=后面的参数,clean数据后,重新install,终于可以正常访问了!赞!
I have created but I tried to add slack via config.sh and clean => then install again but its not work. anyone know how to set it up?
Hi,关于部署后登录提示“Authentication failed...",下面是wk-outline的logs:
wk-outline_1 | {"error":"Failed to obtain access token","stack":"InternalOAuthError: Failed to obtain access token\n at OAuth2Strategy._createOAuthError (/opt/outline/node_modules/passport-oauth2/lib/strategy.js:423:17)\n at /opt/outline/node_modules/passport-oauth2/lib/strategy.js:177:45\n at /opt/outline/node_modules/oauth/lib/oauth2.js:191:18\n at ClientRequest.<anonymous> (/opt/outline/node_modules/oauth/lib/oauth2.js:162:5)\n at ClientRequest.emit (node:events:390:28)\n at ClientRequest.emit (node:domain:475:12)\n at TLSSocket.socketErrorListener (node:_http_client:447:9)\n at TLSSocket.emit (node:events:390:28)\n at TLSSocket.emit (node:domain:475:12)\n at emitErrorNT (node:internal/streams/destroy:157:8)\n at emitErrorCloseNT (node:internal/streams/destroy:122:3)\n at processTicksAndRejections (node:internal/process/task_queues:83:21)","level":"error","message":"Error during authentication"}
wk-outline_1 | {"error":"Failed to obtain access token","stack":"InternalOAuthError: Failed to obtain access token\n at OAuth2Strategy._createOAuthError (/opt/outline/node_modules/passport-oauth2/lib/strategy.js:423:17)\n at /opt/outline/node_modules/passport-oauth2/lib/strategy.js:177:45\n at /opt/outline/node_modules/oauth/lib/oauth2.js:191:18\n at ClientRequest.<anonymous> (/opt/outline/node_modules/oauth/lib/oauth2.js:162:5)\n at ClientRequest.emit (node:events:390:28)\n at ClientRequest.emit (node:domain:475:12)\n at TLSSocket.socketErrorListener (node:_http_client:447:9)\n at TLSSocket.emit (node:events:390:28)\n at TLSSocket.emit (node:domain:475:12)\n at emitErrorNT (node:internal/streams/destroy:157:8)\n at emitErrorCloseNT (node:internal/streams/destroy:122:3)\n at processTicksAndRejections (node:internal/process/task_queues:83:21)","level":"error","message":"Error during authentication"}
wk-outline_1 | {"error":"Failed to obtain access token","stack":"InternalOAuthError: Failed to obtain access token\n at OAuth2Strategy._createOAuthError (/opt/outline/node_modules/passport-oauth2/lib/strategy.js:423:17)\n at /opt/outline/node_modules/passport-oauth2/lib/strategy.js:177:45\n at /opt/outline/node_modules/oauth/lib/oauth2.js:191:18\n at ClientRequest.<anonymous> (/opt/outline/node_modules/oauth/lib/oauth2.js:162:5)\n at ClientRequest.emit (node:events:390:28)\n at ClientRequest.emit (node:domain:475:12)\n at TLSSocket.socketErrorListener (node:_http_client:447:9)\n at TLSSocket.emit (node:events:390:28)\n at TLSSocket.emit (node:domain:475:12)\n at emitErrorNT (node:internal/streams/destroy:157:8)\n at emitErrorCloseNT (node:internal/streams/destroy:122:3)\n at processTicksAndRejections (node:internal/process/task_queues:83:21)","level":"error","message":"Error during authentication"}
wk-outline_1 | {"error":"Failed to obtain access token","stack":"InternalOAuthError: Failed to obtain access token\n at OAuth2Strategy._createOAuthError (/opt/outline/node_modules/passport-oauth2/lib/strategy.js:423:17)\n at /opt/outline/node_modules/passport-oauth2/lib/strategy.js:177:45\n at /opt/outline/node_modules/oauth/lib/oauth2.js:191:18\n at ClientRequest.<anonymous> (/opt/outline/node_modules/oauth/lib/oauth2.js:162:5)\n at ClientRequest.emit (node:events:390:28)\n at ClientRequest.emit (node:domain:475:12)\n at TLSSocket.socketErrorListener (node:_http_client:447:9)\n at TLSSocket.emit (node:events:390:28)\n at TLSSocket.emit (node:domain:475:12)\n at emitErrorNT (node:internal/streams/destroy:157:8)\n at emitErrorCloseNT (node:internal/streams/destroy:122:3)\n at processTicksAndRejections (node:internal/process/task_queues:83:21)","level":"error","message":"Error during authentication"}
我是部署在公网上,config.sh中URL填的公网地址。这里会不会跟TLS相关?
Issued the following commands:
cp scripts/config.sh.sample scripts/config.sh
make install
and I get the following output:
cd ./scripts && bash ./main.sh init_cfg
/usr/bin/docker-compose up -d
Recreating outline-docker-compose_wk-minio_1 ...
Recreating outline-docker-compose_wk-oidc-server_1 ...
Starting outline-docker-compose_wk-postgres_1 ...
Starting outline-docker-compose_wk-redis_1 ... error
ERROR: for outline-docker-compose_wk-redis_1 Cannot start service wk-redis: failed to create endpoint outline-docker-compose_wk-redStarting outline-docker-compose_wk-postgres_1 ... error
operation not supported
Recreating outline-docker-compose_wk-oidc-server_1 ... error
wk-postgres_1 on network outline-docker-compose_outlinewiki: failed to add the host (veth3887b19) <=> sandbox (vetha491b95) pair interfaces: operation not supported
Recreating outline-docker-compose_wk-minio_1 ... error
ERROR: for outline-docker-compose_wk-oidc-server_1 Cannot start service wk-oidc-server: failed to create endpoint outline-docker-compose_wk-oidc-server_1 on network outline-docker-compose_outlinewiki: failed to add the host (veth69ab0db) <=> sandbox (veth8d0cf33) pair interfaces: operation not supported
ERROR: for outline-docker-compose_wk-minio_1 Cannot start service wk-minio: failed to create endpoint outline-docker-compose_wk-minio_1 on network outline-docker-compose_outlinewiki: failed to add the host (veth1d6f20b) <=> sandbox (vethf39ff84) pair interfaces: operation not supported
ERROR: for wk-redis Cannot start service wk-redis: failed to create endpoint outline-docker-compose_wk-redis_1 on network outline-docker-compose_outlinewiki: failed to add the host (veth4ad7bc6) <=> sandbox (vethc655f19) pair interfaces: operation not supported
ERROR: for wk-postgres Cannot start service wk-postgres: failed to create endpoint outline-docker-compose_wk-postgres_1 on network outline-docker-compose_outlinewiki: failed to add the host (veth3887b19) <=> sandbox (vetha491b95) pair interfaces: operation not supported
ERROR: for wk-oidc-server Cannot start service wk-oidc-server: failed to create endpoint outline-docker-compose_wk-oidc-server_1 on network outline-docker-compose_outlinewiki: failed to add the host (veth69ab0db) <=> sandbox (veth8d0cf33) pair interfaces: operation not supported
ERROR: for wk-minio Cannot start service wk-minio: failed to create endpoint outline-docker-compose_wk-minio_1 on network outline-docker-compose_outlinewiki: failed to add the host (veth1d6f20b) <=> sandbox (vethf39ff84) pair interfaces: operation not supported
ERROR: Encountered errors while bringing up the project.
以下符号不能解析与显示,请问是什么问题?outline wiki bug ?
<br>
这是我的config.sh配置
# The url used to vist this web site.
URL=http://118.25.79.194:8888
# The default interface language. See translate.getoutline.com for a list of
# available language codes and their rough percentage translated.
DEFAULT_LANGUAGE=zh_CN
# https://docs.djangoproject.com/en/2.2/ref/settings/#language-code
LANGUAGE_CODE=en_US
# https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
TIME_ZONE=UTC
FORCE_HTTPS=false
# The domain in you email.
# Comma separated list of domains to be allowed (optional).
# If not set, the first user's domain is allowed by default.
ALLOWED_DOMAINS=
# Nginx
# The nginx bind ip and port.
# If you use ip address to access outline, this ip and port should be same as the URL.
# If this server behind a proxy(nginx), you can bind to `127.0.0.1`.
HTTP_IP=0.0.0.0
HTTP_PORT_IP=8888
# Docker
# If you server behind a proxy(nginx), and the proxy created by docker. You can use the proxy's network. Set the `NETWORKS` to proxy's network name, and set `NETWORKS_EXTERNAL` to `true` .
# The sample config for host nginx can be find in `config/sample/nginx_outline.conf`.
NETWORKS=outlinewiki
NETWORKS_EXTERNAL=false
# Secret keys, update by script.
# You shouldn't edit it.
MINIO_ACCESS_KEY=25cbd8fef14df517
MINIO_SECRET_KEY=e96cb9fe938768c87fcea1429198d94c38418ddf51770f518c88c786d8338135
OIDC_CLIENT_SECRET=e96cb9fe938768c87fcea1429198d94c38418ddf51770f518c88c786d8338135
OUTLINE_SECRET_KEY=8bba7dbc5cb45b7a0cd879b3c06ed17ff3b642be9fdea7db00bd0c2b9ecbd1e3
OUTLINE_UTILS_SECRET=68f6e7eb8cb84922de50ebe615de8463e90d35e3e104ce91765de533487e3ced
DJANGO_SECRET_KEY=b6f9599e3be93619f9caacf8f7090170ab7fc9de6f8b4ec7d56b6a2217ad2da0
为了我的域名能够访问,我在我机器上的nginx配置如下:
server {
listen 80;
server_name wiki.lucq.fun;
location / {
proxy_pass http://127.0.0.1:8888;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
}
}
当我使用 http://wiki.lucq.fun 访问的时候,第一个页面能正常进入,当在第一个页面点击“使用openid继续”之后,他就跳转到了IP的网页。后续访问都是IP的网页。图片如下:
如果强制将IP访问的网页改为域名访问,比如将 http://118.25.79.194:8888/collection/welcome-Imb2SDo8P3 改为
http://wiki.lucq.fun/collection/welcome-Imb2SDo8P3 则又会跳转到认证页面。认证完成之后又会跳转到IP。
我也尝试过将config.sh 中的 URL=http://118.25.79.194:8888 改为 URL=http://wiki.lucq.fun ;但是认证却无法成功。
使用make logs查看日志,有如下关键警告日志:
{"error":"State not return in OAuth flow","stack":"BadRequestError: State not return in OAuth flow\n at OAuthStateMismatchError (/opt/outline/build/server/errors.js:99:34)\n at StateStore.verify (/opt/outline/build/server/utils/passport.js:43:61)\n at OAuth2Strategy.authenticate (/opt/outline/node_modules/passport-oauth2/lib/strategy.js:222:26)\n at attempt (/opt/outline/node_modules/passport/lib/middleware/authenticate.js:366:16)\n at authenticate (/opt/outline/node_modules/passport/lib/middleware/authenticate.js:367:7)\n at /opt/outline/node_modules/@outlinewiki/koa-passport/lib/framework/koa.js:194:7\n at new Promise ()\n at /opt/outline/node_modules/@outlinewiki/koa-passport/lib/framework/koa.js:193:12\n at /opt/outline/node_modules/@outlinewiki/koa-passport/lib/framework/koa.js:143:7\n at new Promise ()\n at passportAuthenticate (/opt/outline/node_modules/@outlinewiki/koa-passport/lib/framework/koa.js:107:15)\n at passportMiddleware (/opt/outline/build/server/middlewares/passport.js:66:7)\n at dispatch (/opt/outline/node_modules/koa-compose/index.js:44:32)\n at next (/opt/outline/node_modules/koa-compose/index.js:45:18)\n at /opt/outline/node_modules/koa-router/lib/router.js:321:16\n at dispatch (/opt/outline/node_modules/koa-compose/index.js:44:32)\n at next (/opt/outline/node_modules/koa-compose/index.js:45:18)\n at methodOverrideMiddleware (/opt/outline/build/server/middlewares/methodOverride.js:22:12)\n at dispatch (/opt/outline/node_modules/koa-compose/index.js:44:32)\n at next (/opt/outline/node_modules/koa-compose/index.js:45:18)\n at /opt/outline/node_modules/koa-router/lib/router.js:321:16\n at dispatch (/opt/outline/node_modules/koa-compose/index.js:44:32)","level":"error","message":"Error during authentication"}
请问:如何配置config.sh我才能全程使用我的域名访问outline服务?
先谢谢你了,打扰你了!
First, thank you for share your standalone docker configuration,
It is very useful for me
even though, I have a humble question.
whenever I restart docker-compose.yml
It creates new docker volumn
below two container always makes new volumn
volumn name looks like ramdom hash number
I tried figured it out but it was difficult to find out.
If you have some time for look into, please help me.
thanks
Thanks for this magical installation script! it works for me on Ubuntu 20.
I have issues with the login, it is keep redirecting the user back to the login screen with this parameter in the url. Not sure how to get this working. I have a Nginx proxy running on the server to handle this, this is on a brand new box.
I tried to use the magic link feature because of this issue in login but I am not getting any emails, no errors on screen. It says email sent but I did not get any email. Not sure how to troubleshoot this.
I will be ok if one of this feature works magic link or the login using oidc server.
Thank you!
After configuring ssl, logging in to the outline reports an error verification failure. The error is as follows:
log: {"error":"Failed to obtain access token","stack":"InternalOAuthError: Failed to obtain access token\n at OAuth2Strategy._createOAuthError (/opt/outline/node_modules/passport-oauth2/lib/strategy.js:423:17)\n at /opt/outline/node_modules/passport-oauth2/lib/strategy.js:177:45\n at /opt/outline/node_modules/oauth/lib/oauth2.js:191:18\n at ClientRequest. (/opt/outline/node_modules/oauth/lib/oauth2.js:162:5)\n at ClientRequest.emit (node:events:526:28)\n at ClientRequest.emit (node:domain:475:12)\n at Socket.socketErrorListener (node:_http_client:442:9)\n at Socket.emit (node:events:526:28)\n at Socket.emit (node:domain:475:12)\n at emitErrorNT (node:internal/streams/destroy:157:8)\n at emitErrorCloseNT (node:internal/streams/destroy:122:3)\n at processTicksAndRejections (node:internal/process/task_queues:83:21)","level":"error","message":"Error during authentication"}
在同一浏览器中首次登录账号后,即便退出登录,下次点击”使用OpenID继续“仍然是首次登录账号
无法切换账号和退出
操作系统:Debian11
Docker版本:20.10.16
docker-compose版本:v2.5.0
按照安装命令执行git clone .. cp.. make install
容器outline-docker-compose-wk-outline-1无限重启
日志如下:
== 20220419052832-create-team-domains: migrating =======
== 20220419052832-create-team-domains: migrated (0.015s)
== 20220421052253-create-file-operation-format: migrating =======
== 20220421052253-create-file-operation-format: migrated (0.006s)
== 20220430043135-collection-sort-backfill: migrating =======
Backfilling collection sort…
== 20220430043135-collection-sort-backfill: migrated (0.007s)
Done in 3.89s.
yarn run v1.22.18
$ node ./build/server/index.js
{"label":"lifecycle","level":"info","message":"Note: Restricting process count to 1 due to use of collaborative service"}
{"level":"warn","message":"Environment configuration is invalid, please check the following:\n\n"}
{"level":"warn","message":"- SLACK_VERIFICATION_TOKEN cannot be used without SLACK_CLIENT_ID."}
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
yarn run v1.22.18
$ sequelize db:migrate --env production-ssl-disabled
Sequelize CLI [Node: 16.14.2, CLI: 6.3.0, ORM: 6.9.0]
Loaded configuration file "server/config/database.json".
Using environment "production-ssl-disabled".
No migrations were executed, database schema was already up to date.
Done in 1.01s.
yarn run v1.22.18
$ node ./build/server/index.js
{"label":"lifecycle","level":"info","message":"Note: Restricting process count to 1 due to use of collaborative service"}
{"level":"warn","message":"Environment configuration is invalid, please check the following:\n\n"}
{"level":"warn","message":"- SLACK_VERIFICATION_TOKEN cannot be used without SLACK_CLIENT_ID."}
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
yarn run v1.22.18
$ sequelize db:migrate --env production-ssl-disabled
Sequelize CLI [Node: 16.14.2, CLI: 6.3.0, ORM: 6.9.0]
更换其他vps执行相同步骤,也是同样的问题。
未修改config.sh中的内容,输入邮箱和密码也都正常。
hi
If the make install
command is executed for the first time, the creation of the RSA key will give an error (Something goes wrong: no such table: oidc_provider_rsakey
) and the command must be executed again to create the RSA key.
If the key is not created, it is not possible to login, or the key must be created manually and entered in the admin panel so that the login process works correctly.
❯ make install
cd ./scripts && bash ./main.sh init_cfg
/usr/bin/docker-compose up -d
[+] Running 8/8
⠿ Network outline_outlinewiki Created 0.0s
⠿ Container outline-wk-redis-1 Started 0.8s
⠿ Container outline-wk-minio-1 Started 0.6s
⠿ Container outline-wk-postgres-1 Started 0.7s
⠿ Container outline-wk-oidc-server-1 Started 0.6s
⠿ Container outline-wk-createbuckets-1 Started 0.9s
⠿ Container outline-wk-outline-1 Started 1.1s
⠿ Container outline-wk-nginx-1 Started 1.5s
cd ./scripts && bash ./main.sh reload_nginx
2022/12/10 07:19:45 [notice] 29#29: signal process started
sleep 1
/usr/bin/docker-compose exec wk-oidc-server bash -c "make init"
python manage.py creatersakey
Something goes wrong: no such table: oidc_provider_rsakey
python manage.py createsuperuser
You have 27 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): oidc_provider, sessions.
Run 'python manage.py migrate' to apply them.
Username (leave blank to use 'root'): root
请问如何备份数据?是备份data文件夹嘛?
由于服务器限制,需要跟其他服务共存,无法直接映射到80端口进行暴漏。通过宿主机nginx代理参考了nginx_outline.conf。提示找不到winki_nginx。如果直接proxy_pass http://127.0.0.1:8888 的话,提示重定向的次数过多
Hello,
I managed to start this docker-compose project once, but then it stopped working. I was able to start all the containers (even if the depends_on
feature is not respected, as PG takes quite some time to spin, but the container wk-outline
is already running by then) but I have an issue when logging a user using OIDC.
I am running docker-compose
locally.
I can have a hint of the problem by looking at the wk-outline Docker image logs:
{
"error":"Failed to obtain access token",
"stack":"InternalOAuthError: Failed to obtain access token\n at OAuth2Strategy._createOAuthError (/opt/outline/node_modules/passport-oauth2/lib/strategy.js:423:17)\n at /opt/outline/node_modules/passport-oauth2/lib/strategy.js:177:45\n at /opt/outline/node_modules/oauth/lib/oauth2.js:191:18\n at passBackControl (/opt/outline/node_modules/oauth/lib/oauth2.js:132:9)\n at IncomingMessage.<anonymous> (/opt/outline/node_modules/oauth/lib/oauth2.js:157:7)\n at IncomingMessage.emit (node:events:538:35)\n at IncomingMessage.emit (node:domain:475:12)\n at endReadableNT (node:internal/streams/readable:1345:12)\n at processTicksAndRejections (node:internal/process/task_queues:83:21)",
"level":"error",
"message":"Error during authentication"
}
This happens after creating a root user with a mycompany.com
email and with ALLOWED_DOMAINS=mycompany.com
inside config.sh
My custom config is pretty straighforward, I didn't chage a thing:
# The url used to vist this web site.
URL=http://127.0.0.1:8888
# The default interface language. See translate.getoutline.com for a list of
# available language codes and their rough percentage translated.
DEFAULT_LANGUAGE=en_US
# https://docs.djangoproject.com/en/2.2/ref/settings/#language-code
LANGUAGE_CODE=en-us
# https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
TIME_ZONE=UTC
FORCE_HTTPS=false
# The domain in you email.
# Comma separated list of domains to be allowed (optional).
# If not set, the first user's domain is allowed by default.
ALLOWED_DOMAINS=mycompany.com
# Docker image version
OUTLINE_VERSION=0.66.3
POSTGRES_VERSION=14.4-alpine3.16
# Nginx
# The nginx bind ip and port.
# If you use ip address to access outline, this ip and port should be same as the URL.
# If this server behind a proxy(nginx), you can bind to `127.0.0.1`.
HTTP_IP=127.0.0.1
HTTP_PORT_IP=8888
# Docker
# If you server behind a proxy(nginx), and the proxy created by docker. You can use the proxy's network. Set the `NETWORKS` to proxy's network name, and set `NETWORKS_EXTERNAL` to `true` .
# The sample config for host nginx can be find in `config/sample/nginx_outline.conf`.
NETWORKS=outlinewiki
NETWORKS_EXTERNAL=false
# Secret keys, update by script.
# You shouldn't edit it.
MINIO_ACCESS_KEY=XXXX
MINIO_SECRET_KEY=XXXX
OIDC_CLIENT_SECRET=XXXX
OUTLINE_SECRET_KEY=XXXX
OUTLINE_UTILS_SECRET=XXXX
DJANGO_SECRET_KEY=XXXX
Has anyone the same issue?
Hi
Iam a Windows user and cant follow your Linux instructions to create the compose file.
Do you have an example for a complete docker compose file?
So without me having to execute the "make" commands
thanks
我是这个项目比较早期的用户,当时部署完测试良好并且立马在团队内投入使用。不过使用了一段时间发现Outline落后了很多个版本,并且当时正在用的版本(v0.63.0)的确有一些bug,所以打算备份数据做一次升级。
先是尝试直接把所有依赖的docker镜像更新,结果无法正常使用。后来又发现项目的安装脚本更新了,在新的环境上的确能安装到最新的Outline版本,但是依然无法把老版本的数据备份提供给新环境使用。也尝试了多次只把Outline或者个别的镜像更新,其他镜像保留老版本,但都失败而终了。
目前是把Outline固定在v0.63.0这个版本了,Redis、Postgres这些其他镜像也都保留一开始安装时的版本。唯一能升级的办法貌似只能重新搭建一个,但是数据迁移成了问题,手工去重新编辑文章太麻烦了。
有啥好的办法吗?
第一次进入页面,输入用户名和密码后,点击accept,然后又重新回到登录页面,点击“使用OpenID继续,没反应(一直在此界面循环)
是否有办法创建 REST API 来添加用户?
当一个用户登录了outline之后 ,选择“退出登录”,下次将不需要进行登录,可以直接进入outline
群晖没有make, 能否提供一个可替代的方式绕过make呢? 如果大佬没有时间的话,也可以帮忙讲讲思路,我自己边学边搞下。。。
outline 开源版本不支持多人实时编辑吗?就是多人编辑,实时显示光标那种?
请问make install以后访问http://127.0.0.1:8888/ 页面502怎么解决。
访问http://127.0.0.1:8888/uc/admin/auth/user/是正常的
运行 make install
后出现:
You have 6 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): oidc_provider, sessions. Run 'python manage.py migrate' to apply them.
按照提示输入 python manage.py migrate
命令后报错:
python: can't open file 'manage.py': [Errno 2] No such file or directory
无法登录outline (可能是上边的原因引起的),登录失败提示:
Authentication failed – we were unable to sign you in at this time. Please try again.
系统:Ubuntu 20
CPU架构:AMD
cd ./scripts && bash ./main.sh init_cfg
docker-compose up -d
Creating outline-docker-compose_wk-oidc-server_1 ... done
Creating outline-docker-compose_wk-redis_1 ... done
Creating outline-docker-compose_wk-minio_1 ... done
Creating outline-docker-compose_wk-postgres_1 ... done
Creating outline-docker-compose_wk-createbuckets_1 ... done
Creating outline-docker-compose_wk-outline_1 ... done
Creating outline-docker-compose_wk-nginx_1 ... done
docker-compose exec wk-oidc-server bash -c "make init"
python manage.py creatersakey
Something goes wrong: no such table: oidc_provider_rsakey
python manage.py createsuperuser
You have 6 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): oidc_provider, sessions.
Run 'python manage.py migrate' to apply them.
Username (leave blank to use 'root'):
Email address:
Password:
Password (again):
The password is too similar to the email address.
Superuser created successfully.
docker-compose exec wk-oidc-server bash -c "python manage.py loaddata oidc-server-outline-client"
Installed 1 object(s) from 1 fixture(s)
root@ubuntu:~/data/outline-docker-compose# python manage.py migrate
python: can't open file 'manage.py': [Errno 2] No such file or directory
2023/03/28 12:22:50 [error] 28#28: *1 connect() failed (113: No route to host) while connecting to upstream, client: 39.189.44.242, server: , request: "GET / HTTP/1.1", upstream: "http://172.27.0.7:3000/", host: "152.136.132.109:4488"
39.189.44.242 - - [28/Mar/2023:12:22:50 +0000] "GET / HTTP/1.1" 502 559 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.54" "-"
2023/03/28 12:22:53 [error] 28#28: *1 connect() failed (113: No route to host) while connecting to upstream, client: 39.189.44.242, server: , request: "GET /favicon.ico HTTP/1.1", upstream: "http://172.27.0.7:3000/favicon.ico", host: "152.136.132.109:4488", referrer: "http://152.136.132.109:4488/"
39.189.44.242 - - [28/Mar/2023:12:22:53 +0000] "GET /favicon.ico HTTP/1.1" 502 559 "http://152.136.132.109:4488/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.54" "-"
Hi, thank you for making this -- it was very easy to get outline up and running!
I see that you're managing specific versions of the containers which is nice, however I'm not sure what the procedure for updating should be. It would be nice if there was a section in the README that says what do do when you've updated this project.
Maybe something like this
If there's an update, simply pull the latest version of this repo git pull ...
Then run ???
(maybe this is docker compose pull/up
or maybe the upgrade process is more complex?) and you'll be using the latest versions of everything. Your data is stored/persisted in the data
folder so everything should just work once the update is done.
scripts/config配置的端口非8888,都无法访问文档内都无法加载图片,想问下哪里能配minio跟outline端口对接问题
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.