Sample updates, changelog and documentation for channels and activity
This commit is contained in:
parent
26b2d3b0b2
commit
120dda2c75
|
@ -24,3 +24,4 @@ RUN pip install --upgrade youtube-dl
|
|||
WORKDIR /app
|
||||
|
||||
ENTRYPOINT ["./compose/django/entrypoint.sh"]
|
||||
CMD ["./compose/django/daphne.sh"]
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
Basic activity stream for listening and favorites (#23)
|
||||
|
||||
A new "Activity" page is now available from the sidebar, where you can
|
||||
browse your instance activity. At the moment, this includes other users
|
||||
favorites and listening, but more activity types will be implemented in the
|
||||
future.
|
||||
|
||||
Internally, we implemented those events by following the Activity Stream
|
||||
specification, which will help us to be compatible with other networks
|
||||
in the long-term.
|
||||
|
||||
A new settings page has been added to control the visibility of your activity.
|
||||
By default, your activity will be browsable by anyone on your instance,
|
||||
but you can switch to a full private mode where nothing is shared.
|
||||
|
||||
The setting form is available in your profile.
|
|
@ -0,0 +1,59 @@
|
|||
Switched to django-channels and daphne for serving HTTP and websocket (#34)
|
||||
|
||||
Upgrade notes
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
This release include an important change in the way we serve the HTTP API.
|
||||
To prepare for new realtime features and enable websocket support in Funkwhale,
|
||||
we are now using django-channels and daphne to serve HTTP and websocket traffic.
|
||||
|
||||
This replaces gunicorn and the switch should be easy assuming you
|
||||
follow the upgrade process described bellow.
|
||||
|
||||
If you are using docker, please remove the command instruction inside the
|
||||
api service, as the up-to-date command is now included directly in the image
|
||||
as the default entry point:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
api:
|
||||
restart: unless-stopped
|
||||
image: funkwhale/funkwhale:${FUNKWHALE_VERSION:-latest}
|
||||
command: ./compose/django/gunicorn.sh # You can remove this line
|
||||
|
||||
On non docker setups, you'll have to update the [Service] block of your
|
||||
funkwhale-server systemd unit file to launch the application server using daphne instead of gunicorn.
|
||||
|
||||
The new configuration should be similar to this:
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[Service]
|
||||
User=funkwhale
|
||||
# adapt this depending on the path of your funkwhale installation
|
||||
WorkingDirectory=/srv/funkwhale/api
|
||||
EnvironmentFile=/srv/funkwhale/config/.env
|
||||
ExecStart=/usr/local/bin/daphne -b ${FUNKWHALE_API_IP} -p ${FUNKWHALE_API_PORT} config.asgi:application
|
||||
|
||||
Ensure you update funkwhale's dependencies as usual to install the required
|
||||
packages.
|
||||
|
||||
On both docker and non-docker setup, you'll also have to update your nginx
|
||||
configuration for websocket support. Ensure you have the following blocks
|
||||
included in your virtualhost file:
|
||||
|
||||
.. code-block:: txt
|
||||
|
||||
map $http_upgrade $connection_upgrade {
|
||||
default upgrade;
|
||||
'' close;
|
||||
}
|
||||
|
||||
server {
|
||||
...
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection $connection_upgrade;
|
||||
}
|
||||
|
||||
Remember to reload your nginx server after the edit.
|
|
@ -43,7 +43,6 @@ services:
|
|||
restart: unless-stopped
|
||||
image: funkwhale/funkwhale:${FUNKWHALE_VERSION:-latest}
|
||||
env_file: .env
|
||||
command: ./compose/django/gunicorn.sh
|
||||
volumes:
|
||||
- ./data/music:/music:ro
|
||||
- ./data/media:/app/funkwhale_api/media
|
||||
|
|
|
@ -8,7 +8,7 @@ User=funkwhale
|
|||
# adapt this depending on the path of your funkwhale installation
|
||||
WorkingDirectory=/srv/funkwhale/api
|
||||
EnvironmentFile=/srv/funkwhale/config/.env
|
||||
ExecStart=/srv/funkwhale/virtualenv/bin/gunicorn config.wsgi:application -b ${FUNKWHALE_API_IP}:${FUNKWHALE_API_PORT}
|
||||
ExecStart=/usr/local/bin/daphne -b ${FUNKWHALE_API_IP} -p ${FUNKWHALE_API_PORT} config.asgi:application
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
|
|
@ -19,6 +19,12 @@ server {
|
|||
location / { return 301 https://$host$request_uri; }
|
||||
}
|
||||
|
||||
# required for websocket support
|
||||
map $http_upgrade $connection_upgrade {
|
||||
default upgrade;
|
||||
'' close;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
listen [::]:443 ssl http2;
|
||||
|
@ -51,6 +57,11 @@ server {
|
|||
proxy_set_header X-Forwarded-Port $server_port;
|
||||
proxy_redirect off;
|
||||
|
||||
# websocket support
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection $connection_upgrade;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ @rewrites;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue