Skip to content

Commit

Permalink
Merge pull request #16 from acelaya/feature/0.1.1
Browse files Browse the repository at this point in the history
Feature/0.1.1
  • Loading branch information
acelaya authored Aug 6, 2018
2 parents 671f20d + f3a3854 commit c8e5dfa
Show file tree
Hide file tree
Showing 6 changed files with 78 additions and 23 deletions.
4 changes: 4 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
./build
./dist
./node_modules
./test
23 changes: 23 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# CHANGELOG

## 0.1.1 - 2018-08-06

#### Added

* [#15](https://github.com/shlinkio/shlink-web-client/issues/15) Added a `Dockerfile` that can be used to generate a distributable docker image

#### Changed

* *Nothing*

#### Deprecated

* *Nothing*

#### Removed

* *Nothing*

#### Fixed

* *Nothing*
23 changes: 16 additions & 7 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,21 @@
FROM node:10.4.1-alpine
FROM nginx:1.15.2-alpine
MAINTAINER Alejandro Celaya <alejandro@alejandrocelaya.com>

# Install yarn
RUN apk add --no-cache --virtual yarn
# Install node and yarn
RUN apk add --no-cache --virtual nodejs && apk add --no-cache --virtual yarn

# Make home dir writable by anyone
RUN chmod 777 /home
ADD . ./shlink-web-client

CMD cd /home/shlink/www && \
# Install dependencies and build project
RUN cd ./shlink-web-client && \
yarn install && \
yarn start
yarn build && \

# Move build contents to document root
cd .. && \
rm -r /usr/share/nginx/html/* && \
mv ./shlink-web-client/build/* /usr/share/nginx/html && \
rm -r ./shlink-web-client && \

# Delete and uninstall build tools
yarn cache clean && apk del yarn && apk del nodejs
22 changes: 21 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,24 @@

[![Build Status](https://travis-ci.org/shlinkio/shlink-web-client.svg?branch=master)](https://travis-ci.org/shlinkio/shlink-web-client)

A React-based client application for [Shlink](https://shlink.io)
A ReactJS-based progressive web application for [Shlink](https://shlink.io).

## Installation

There are three ways in which you can use this application.

* The easiest way to use shlink-web-client is by just going to https://app.shlink.io.

The application runs 100% in the browser, so you can use that instance and access any shlink instance from it.

* Self hosting the application yourself.

Get the [latest release](https://github.com/shlinkio/shlink-web-client/releases/latest) and download the distributable zip file attached to it (`shlink-web-client_X.X.X_dist.zip`).

The package contains static files only, so just put it in a folder and serve it with the web server of your choice (just take into account that all the files are served using absolute paths, so you have to serve it from the root of your domain, not from a subpath).

* Use the official [docker image](https://hub.docker.com/r/shlinkio/shlink-web-client/)

If you want to deploy shlink-web-client in a container-based cluster (docker swarm, kubernetes, etc), just pick the image and do it.

It's a lightweight [nginx:alpine image](https://hub.docker.com/r/library/nginx/) serving the assets on port 80.
10 changes: 5 additions & 5 deletions docker-compose.override.yml.dist
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
version: '3'

services:
shlink_web_client_node:
user: 1000:1000
volumes:
- /etc/passwd:/etc/passwd:ro
- /etc/group:/etc/group:ro
shlink_web_client_node:
user: 1000:1000
volumes:
- /etc/passwd:/etc/passwd:ro
- /etc/group:/etc/group:ro
19 changes: 9 additions & 10 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
version: '3'

services:
shlink_web_client_node:
container_name: shlink_web_client_node
build:
context: .
dockerfile: ./Dockerfile
volumes:
- ./:/home/shlink/www
ports:
- "3000:3000"
- "56745:56745"
shlink_web_client_node:
container_name: shlink_web_client_node
image: node:10.4.1-alpine
command: /bin/sh -c "cd /home/shlink/www && yarn install && yarn start"
volumes:
- ./:/home/shlink/www
ports:
- "3000:3000"
- "56745:56745"

0 comments on commit c8e5dfa

Please sign in to comment.