Merge pull request #258 from StuffNoOneCaresAbout/master
Add a docker-compose file
This commit is contained in:
		
						commit
						1a08d009d8
					
				| 
						 | 
				
			
			@ -0,0 +1,7 @@
 | 
			
		|||
.*
 | 
			
		||||
*.png
 | 
			
		||||
*.md
 | 
			
		||||
LICENSE
 | 
			
		||||
docker-compose.yml
 | 
			
		||||
Dockerfile
 | 
			
		||||
tests/
 | 
			
		||||
							
								
								
									
										10
									
								
								Dockerfile
								
								
								
								
							
							
						
						
									
										10
									
								
								Dockerfile
								
								
								
								
							| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
FROM nimlang/nim:alpine as nim
 | 
			
		||||
MAINTAINER setenforce@protonmail.com
 | 
			
		||||
LABEL maintainer="setenforce@protonmail.com"
 | 
			
		||||
EXPOSE 8080
 | 
			
		||||
 | 
			
		||||
RUN apk --no-cache add libsass-dev libffi-dev openssl-dev redis openssh-client
 | 
			
		||||
| 
						 | 
				
			
			@ -11,9 +11,9 @@ RUN nimble build -y -d:release --passC:"-flto" --passL:"-flto" \
 | 
			
		|||
    && strip -s nitter \
 | 
			
		||||
    && nimble scss
 | 
			
		||||
 | 
			
		||||
FROM redis:6-alpine
 | 
			
		||||
FROM alpine:latest
 | 
			
		||||
WORKDIR /src/
 | 
			
		||||
RUN apk --no-cache add pcre-dev sqlite-dev
 | 
			
		||||
COPY --from=nim /src/nitter/nitter /src/nitter/start.sh /src/nitter/nitter.conf ./
 | 
			
		||||
RUN apk --no-cache add pcre sqlite
 | 
			
		||||
COPY --from=nim /src/nitter/nitter /src/nitter/nitter.conf ./
 | 
			
		||||
COPY --from=nim /src/nitter/public ./public
 | 
			
		||||
CMD ["./start.sh"]
 | 
			
		||||
CMD ./nitter
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										12
									
								
								README.md
								
								
								
								
							
							
						
						
									
										12
									
								
								README.md
								
								
								
								
							| 
						 | 
				
			
			@ -100,15 +100,23 @@ using the systemd service below. You should run Nitter behind a reverse proxy
 | 
			
		|||
such as [Nginx](https://github.com/zedeus/nitter/wiki/Nginx) or Apache for
 | 
			
		||||
security reasons.
 | 
			
		||||
 | 
			
		||||
To run Nitter with docker, you will need to install Redis before you run these commands.
 | 
			
		||||
 | 
			
		||||
To build and run Nitter in Docker:
 | 
			
		||||
```bash
 | 
			
		||||
docker build -t nitter:latest .
 | 
			
		||||
docker run -v $(pwd)/nitter.conf:/src/nitter.conf -d -p 8080:8080 nitter:latest
 | 
			
		||||
docker run -v $(pwd)/nitter.conf:/src/nitter.conf -d --network host nitter:latest
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
A prebuilt Docker image is provided as well:
 | 
			
		||||
```bash
 | 
			
		||||
docker run -v $(pwd)/nitter.conf:/src/nitter.conf -d -p 8080:8080 zedeus/nitter:latest
 | 
			
		||||
docker run -v $(pwd)/nitter.conf:/src/nitter.conf -d --network host zedeus/nitter:latest
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
Using docker-compose to run both Nitter and Redis as different containers:
 | 
			
		||||
Change redisHost from `localhost` to `redis` in `nitter.conf` and then run:
 | 
			
		||||
```bash
 | 
			
		||||
docker-compose up -d
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
Note the Docker commands expect a `nitter.conf` file in the directory you run them.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,18 @@
 | 
			
		|||
version: "3.8"
 | 
			
		||||
services:
 | 
			
		||||
  redis:
 | 
			
		||||
    image: redis:6-alpine
 | 
			
		||||
    restart: unless-stopped
 | 
			
		||||
    volumes:
 | 
			
		||||
      - redis-data:/var/lib/redis
 | 
			
		||||
  nitter:
 | 
			
		||||
    image: zedeus/nitter:latest
 | 
			
		||||
    restart: unless-stopped
 | 
			
		||||
    depends_on:
 | 
			
		||||
      - redis
 | 
			
		||||
    ports:
 | 
			
		||||
      - "8080:8080"
 | 
			
		||||
    volumes:
 | 
			
		||||
      - ./nitter.conf:/src/nitter.conf
 | 
			
		||||
volumes:
 | 
			
		||||
  redis-data:
 | 
			
		||||
| 
						 | 
				
			
			@ -10,7 +10,7 @@ hostname = "nitter.net"
 | 
			
		|||
[Cache]
 | 
			
		||||
listMinutes = 240  # how long to cache list info (not the tweets, so keep it high)
 | 
			
		||||
rssMinutes = 10  # how long to cache rss queries
 | 
			
		||||
redisHost = "localhost"
 | 
			
		||||
redisHost = "localhost" # Change to "redis" if using docker-compose
 | 
			
		||||
redisPort = 6379
 | 
			
		||||
redisConnections = 20 # connection pool size
 | 
			
		||||
redisMaxConnections = 30
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue