63 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
| FROM alpine:latest
 | |
| 
 | |
| RUN mkdir /mempool.space/
 | |
| COPY ./backend /mempool.space/backend/
 | |
| COPY ./frontend /mempool.space/frontend/
 | |
| COPY ./mariadb-structure.sql /mempool.space/mariadb-structure.sql
 | |
| #COPY ./nginx.conf /mempool.space/nginx.conf
 | |
| 
 | |
| RUN apk add mariadb mariadb-client jq git nginx npm rsync
 | |
| 
 | |
| RUN mysql_install_db --user=mysql --datadir=/var/lib/mysql/
 | |
| RUN /usr/bin/mysqld_safe --datadir='/var/lib/mysql/'& \
 | |
|     sleep 60 && \
 | |
|     mysql -e "create database mempool" && \
 | |
|     mysql -e "grant all privileges on mempool.* to 'mempool'@'localhost' identified by 'mempool'" && \
 | |
|     mysql mempool < /mempool.space/mariadb-structure.sql
 | |
| RUN sed -i "/^skip-networking/ c#skip-networking" /etc/my.cnf.d/mariadb-server.cnf
 | |
| 
 | |
| RUN export NG_CLI_ANALYTICS=ci && \
 | |
|     npm install -g typescript && \
 | |
|     cd /mempool.space/frontend && \
 | |
|     npm install && \
 | |
|     cd /mempool.space/backend && \
 | |
|     npm install && \
 | |
|     tsc
 | |
| 
 | |
| COPY ./nginx-nossl-docker.conf /etc/nginx/nginx.conf
 | |
|     
 | |
| ENV ENV dev
 | |
| ENV DB_HOST localhost
 | |
| ENV DB_PORT 3306
 | |
| ENV DB_USER mempool
 | |
| ENV DB_PASSWORD mempool
 | |
| ENV DB_DATABASE mempool
 | |
| ENV HTTP_PORT 80
 | |
| ENV API_ENDPOINT /api/v1/
 | |
| ENV CHAT_SSL_ENABLED false
 | |
| #ENV CHAT_SSL_PRIVKEY
 | |
| #ENV CHAT_SSL_CERT
 | |
| #ENV CHAT_SSL_CHAIN
 | |
| ENV MEMPOOL_REFRESH_RATE_MS 500
 | |
| ENV INITIAL_BLOCK_AMOUNT 8
 | |
| ENV DEFAULT_PROJECTED_BLOCKS_AMOUNT 3
 | |
| ENV KEEP_BLOCK_AMOUNT 24
 | |
| ENV BITCOIN_NODE_HOST bitcoinhost
 | |
| ENV BITCOIN_NODE_PORT 8332
 | |
| ENV BITCOIN_NODE_USER bitcoinuser
 | |
| ENV BITCOIN_NODE_PASS bitcoinpass
 | |
| ENV TX_PER_SECOND_SPAN_SECONDS 150
 | |
| 
 | |
| #RUN echo "mysqld_safe& sleep 20 && cd /mempool.space/backend && rm -f mempool-config.json && rm -f cache.json && touch cache.json && jq -n env > mempool-config.json && node dist/index.js" > /entrypoint.sh
 | |
| 
 | |
| RUN cd /mempool.space/frontend/ && \
 | |
|     npm run build && \
 | |
|     rsync -av --delete dist/mempool/ /var/www/html/
 | |
| 
 | |
| EXPOSE 80
 | |
| 
 | |
| COPY ./entrypoint.sh /mempool.space/entrypoint.sh
 | |
| RUN chmod +x /mempool.space/entrypoint.sh
 | |
| WORKDIR /mempool.space
 | |
| CMD ["/mempool.space/entrypoint.sh"]
 |