-
Notifications
You must be signed in to change notification settings - Fork 617
Deploy: Azure
Note: Do you know that non-profits can access US $3500 in Azure credits to set up cloud solutions?
You can easily do it in the portal.
The question is how do you want to keep your Matterbridge configuration.
The easiest method is probably to create a Storage Account with a file share and upload there your matterbridge.toml
.
To manage and make it transparent what channels get bridged you might want to keep the configuration versioned on Github and provide tokens via environment variables.
Example: config file and env variables.
When using WhatsApp bridge it's handy to save session files. For this you will need a mounted volume. You can either use Storage Account mentioned above, or a Secrets Storage.
Sadly mounting volumes (Github or Storage Account) is not available from Portal so you have to use the CLI (there is CLI icon in the top menu).
For Github-backed config type:
az container create \
--resource-group matterbridge \
--name matterbridge-container \
--image 42wim/matterbridge:1.13.0 \
--os-type Linux \
--restart-policy OnFailure \
--command-line "/bin/matterbridge -conf /home/config/matterbridge.toml" \
--gitrepo-url https://github.com/Code-for-All/matterbridge-config \
--gitrepo-mount-path /home/config \
--environment-variables 'MATTERBRIDGE_SLACK_CODEFORALL_TOKEN'='xoxb-' 'MATTERBRIDGE_SLACK_EPANSTWO_TOKEN'='xoxb-'
Docs: Github params
For file-share-backed config type:
az container create \
--resource-group matterbridge \
--name matterbridge-container \
--image 42wim/matterbridge:1.13.0 \
--os-type Linux \
--restart-policy OnFailure \
--command-line "/bin/matterbridge -conf /home/config/matterbridge.toml" \
--azure-file-volume-account-name $ACI_PERS_STORAGE_ACCOUNT_NAME \
--azure-file-volume-account-key $STORAGE_KEY \
--azure-file-volume-share-name $ACI_PERS_SHARE_NAME \
--azure-file-volume-mount-path /home/config
Check here how to find the file share keys.
In Portal, in the menu on the left got to Settings
-> Containers
and click on the Logs
tab. If everything goes well you should see following message:
time="2019-02-04T10:30:19Z" level=info msg="Gateway(s) started succesfully. Now relaying messages" prefix=main
If something is wrong, a verbal error message should guide you to solve it.
When you change the config file you just have to restart the container for the new settings to be pulled in. If the config file is hosted on Github and mounted as mentioned above, the restart will download the current commit.
Getting started
How to create your config
Discord bot setup
Slack bot setup
MS Teams setup
Deploy
DigitalOcean
Azure
Docker
Heroku
Gateways
Config: basic
Config: channel rules
Discord
Gitter
Hipchat
IRC
Keybase
Matrix
Mattermost
Microsoft Teams
Mumble
Nextcloud Talk
RocketChat
Slack
Sshchat
Steam
Telegram
Twitch
VK
WhatsApp
XMPP
Zulip
Advanced
Mediaserver setup
Service files
Developer
API
Tengo scripting
Making gateways