diff --git a/.dockerignore b/.dockerignore index 706350d..a393b82 100644 --- a/.dockerignore +++ b/.dockerignore @@ -5,6 +5,5 @@ data media docker-compose.yaml -Dockerfile -Dockerfile-monero README.md +Docker diff --git a/Docker/Dockerfile-logstash b/Docker/Dockerfile-logstash new file mode 100644 index 0000000..3ea6198 --- /dev/null +++ b/Docker/Dockerfile-logstash @@ -0,0 +1,6 @@ +FROM docker.elastic.co/logstash/logstash:7.5.2 + +RUN rm -f /usr/share/logstash/pipeline/logstash.conf +RUN /usr/share/logstash/bin/logstash-plugin install logstash-output-elasticsearch + +ADD files/logstash.conf /usr/share/logstash/pipeline/logstash.conf diff --git a/Dockerfile-xmrauctions b/Docker/Dockerfile-xmrauctions similarity index 100% rename from Dockerfile-xmrauctions rename to Docker/Dockerfile-xmrauctions diff --git a/docker-compose.deploy.yaml b/Docker/docker-compose.deploy.yaml similarity index 100% rename from docker-compose.deploy.yaml rename to Docker/docker-compose.deploy.yaml diff --git a/docker-compose.yaml b/Docker/docker-compose.yaml similarity index 99% rename from docker-compose.yaml rename to Docker/docker-compose.yaml index 8105a7f..3f9f3ff 100644 --- a/docker-compose.yaml +++ b/Docker/docker-compose.yaml @@ -14,3 +14,4 @@ services: image: redis:5.0.7-buster ports: - 6379:6379 + diff --git a/Docker/files/logstash.conf b/Docker/files/logstash.conf new file mode 100644 index 0000000..6937739 --- /dev/null +++ b/Docker/files/logstash.conf @@ -0,0 +1,11 @@ +input { + http {} +} + +output { + stdout { codec => "rubydebug" } + elasticsearch { + hosts => ["es01:9200"] + index => "logstash-%{+YYYY-MM-dd}" + } +} diff --git a/Dockerfile-monero b/Dockerfile-monero deleted file mode 100644 index f4fdf45..0000000 --- a/Dockerfile-monero +++ /dev/null @@ -1,32 +0,0 @@ -FROM ubuntu:19.04 - -ENV MONERO_VERSION v0.15.0.1 -ENV MONERO_HASH 8d61f992a7e2dbc3d753470b4928b5bb9134ea14cf6f2973ba11d1600c0ce9ad -ENV MONERO_DL_FILE monero.tar.bz2 -ENV MONERO_SUMS_FILE sha256sums - -WORKDIR /opt/monero - -# Update system and install dependencies -# Download Monero binaries from Github -# Confirm hashes match -# Install daemon binary -# Clean up - -RUN apt-get update \ - && apt-get upgrade -y \ - && apt-get install -y tar wget \ - && wget -qO ${MONERO_DL_FILE} https://github.com/monero-project/monero/releases/download/${MONERO_VERSION}/monero-linux-x64-${MONERO_VERSION}.tar.bz2 \ - && echo "${MONERO_HASH} ${MONERO_DL_FILE}" > ${MONERO_SUMS_FILE} \ - && sha256sum -c ${MONERO_SUMS_FILE}; \ - if [ "$?" -eq 0 ]; \ - then \ - echo -e "[+] Hashes match - proceeding with container build"; \ - else \ - echo -e "[!] Hashes do not match - exiting"; \ - exit 5; \ - fi \ - && mkdir ./tmp \ - && tar xjf ${MONERO_DL_FILE} -C ./tmp --strip 1 \ - && mv ./tmp/* /usr/local/bin/ \ - && rm -rf ./tmp ${MONERO_SUMS_FILE} ${MONERO_DL_FILE} diff --git a/Makefile b/Makefile index 22bc7a1..63d3da3 100644 --- a/Makefile +++ b/Makefile @@ -7,10 +7,19 @@ help: @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' build: ## Build the required containers + cp Docker/Dockerfile-* . docker build -t xmrauctions -f Dockerfile-xmrauctions . + rm -f Dockerfile-* up: ## Run dev service containers + cp Docker/docker-compose.yaml . docker-compose up -d + rm -f docker-compose.yaml + +down: ## Stop dev service containers + cp Docker/docker-compose.yaml . + docker-compose down + rm -f docker-compose.yaml dev: ## Start development web service ./manage.py runserver @@ -18,22 +27,27 @@ dev: ## Start development web service shell: ## Enter Django shell ./manage.py shell -createsuperuser: ## Create admin user in Django backend - docker run --rm -it --env-file=.env --net=xmrauctions_default xmrauctions ./manage.py createsuperuser +clean: + rm -f *compose.yaml Dockerfile* + +logs: + cp Docker/docker-compose.yaml . + docker-compose logs -f + rm -f docker-compose.yaml ### Deploy deploy-up: ## Run the containers - docker-compose -f docker-compose.yaml -f docker-compose.deploy.yaml up -d + docker-compose -f Docker/docker-compose.yaml -f Docker/docker-compose.deploy.yaml up -d deploy-down: ## Stop the containers - docker-compose -f docker-compose.yaml -f docker-compose.deploy.yaml down + docker-compose -f Docker/docker-compose.yaml -f Docker/docker-compose.deploy.yaml down deploy-ps: ## Show the containers - docker-compose -f docker-compose.yaml -f docker-compose.deploy.yaml ps + docker-compose -f Docker/docker-compose.yaml -f Docker/docker-compose.deploy.yaml ps deploy-logs: ## Show container logs - docker-compose -f docker-compose.yaml -f docker-compose.deploy.yaml logs -f + docker-compose -f Docker/docker-compose.yaml -f Docker/docker-compose.deploy.yaml logs -f deploy-static: ## Collect static docker run --rm --env-file=.env xmrauctions ./manage.py collectstatic --no-input @@ -43,3 +57,6 @@ deploy-migrations: ## Run migrations deploy-manage: ## Run management commands docker run --rm -it --env-file=.env --net=xmrauctions_default xmrauctions ./manage.py $(CMD) + +deploy-createadmin: ## Create admin user in Django backend + docker run --rm -it --env-file=.env --net=xmrauctions_default xmrauctions ./manage.py createsuperuser diff --git a/xmrauctions/settings.py b/xmrauctions/settings.py index cfc83db..ef0e400 100644 --- a/xmrauctions/settings.py +++ b/xmrauctions/settings.py @@ -36,7 +36,6 @@ BLOCK_EXPLORER = 'https://community.xmr.to/explorer/%s' IRC_USER = os.environ.get('IRC_USER', 'lza_menace') TWITTER_USER = os.environ.get('TWITTER_USER', 'lza_menace') GITHUB_USER = os.environ.get('GITHUB_USER', 'lalanza808') -EMAIL_ACCOUNT = os.environ.get('EMAIL_ACCOUNT', 'lza_menace@protonmail.com') SOCIAL_MEDIA = { 'fas fa-comment-dots': { @@ -280,4 +279,4 @@ if aw.connected is True: platform_wallet_address = str(aw.wallet.accounts[0].address()) PLATFORM_WALLET_ADDRESS = os.environ.get('PLATFORM_WALLET_ADDRESS', platform_wallet_address) -TIP_WALLET_ADDRESS = os.environ.get('TIP_ADDRESS', PLATFORM_WALLET_ADDRESS) \ No newline at end of file +TIP_WALLET_ADDRESS = os.environ.get('TIP_ADDRESS', PLATFORM_WALLET_ADDRESS)