Commit d6197611 authored by LoveIsGrief's avatar LoveIsGrief

Simple docker image with documentation

parent bd73d86e
FROM gradle:jdk${JAVA_VERSION:-8}
COPY . /tmp/src
WORKDIR /tmp/src
USER root
RUN gradle -Dorg.gradle.daemon=false build
RUN tar xf build/distributions/signald.tar -C /opt
RUN ln -sf /opt/signald/bin/signald /usr/local/bin/
# basically `make setup`
RUN mkdir -p /var/run/signald
RUN chown gradle /var/run/signald
# Cleanup
RUN rm -rf /tmp/src
USER gradle
WORKDIR /home/gradle
ENTRYPOINT ["/usr/local/bin/signald"]
......@@ -4,13 +4,15 @@
signald is a daemon that facilitates communication over Signal.
## Quick Start
## Installation
- [From source](./docs/install/source.md)
- [Debian](./docs/install/debian.md)
- [Docker](./docs/install/docker.md)
*if you run Debian and would prefer an apt repo, see [Debian Installation](#debian-installation) below*
## Quick Start
1. Run `make installDist` to build signald
1. Run `make setup` to configure the system directories
1. Run `build/install/signald/bin/signald` to start signald. It will continue running until killed (or ctrl-C)
1. Startup signald depending on your installation method
1. In a second terminal window, connect to the signald control socket: `nc -U /var/run/signald/signald.sock` (Debian users will need to have `netcat-openbsd` installed)
1. Register a new number on signal by typing this: `{"type": "register", "username": "+12024561414"}` (replace `+12024561414` with your own number)
1. Once you receive the verification text, submit it like this: `{"type": "verify", "username": "+12024561414", "code": "000-000"}` where `000-000` is the verification code.
......@@ -270,27 +272,6 @@ As one might expect, `recipientNumber` and `recipientGroupId` are mutually exclu
| `recipientGroupId` | `string` | no | The group ID to update expiration for. |
| `expiresInSeconds` | `int` | yes | The number of seconds after which messages in the conversation should expire. Set to 0 to turn of disappearing messages. |
## Debian Installation
Add the following to your `sources.list`:
```
deb https://updates.signald.org master main
```
And trust the signing key:
```
curl https://updates.signald.org/apt-signing-key.asc | sudo apt-key add -
```
Now you can install signald:
```
sudo apt install signald
```
## Transition An Account From signal-cli
signald's on-disk data structures are generally the same as or very similar to signal-cli's. Until recently, signald used the same
......
# Debian Installation
Add the following to your `sources.list`:
```
deb https://updates.signald.org master main
```
And trust the signing key:
```
curl https://updates.signald.org/apt-signing-key.asc | sudo apt-key add -
```
Now you can install signald:
```
sudo apt install signald
```
# Installation using docker
Pull the image from Docker Hub
`docker pull bisentenialwrug/signald`
# Running the image
You will need to map a folder to `/var/run/signald` in the container
in order to access the socket. You will be sending messages to the
process in the container.
Another folder will have to mapped to `/home/gradle` in order to keep
the config. It will then be found in the subfolder `.config/signald`
```bash
mkdir gradle run
docker run \
-v "$PWD/gradle":/home/gradle \
-v $PWD/run":/var/run/signald \
bisentenialwrug:signald
```
_Hint: Use `docker --rm` if you're just testing and want the container removed once you hit Ctrl+C_
# Installation from source
1. Run `make installDist` to build signald
1. Run `make setup` to configure the system directories
# Running
Run `build/install/signald/bin/signald` to start signald. It will continue running until killed (or ctrl-C)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment