[static] Add docker for a unique registry ui

You will need to run your docker with the environment variable `URL`
This commit is contained in:
Joxit 2016-06-20 00:16:16 +02:00
parent 56413151a0
commit f1c6ebec16
6 changed files with 141 additions and 0 deletions

54
Dockerfile.static Normal file
View file

@ -0,0 +1,54 @@
# Copyright (C) 2016 Jones Magloire @Joxit
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
FROM node:slim
MAINTAINER Jones MAGLOIRE @Joxit
WORKDIR /usr/src/app
RUN npm install -g http-server && npm cache clean
COPY package.json /usr/src/app
RUN npm install \
&& find node_modules/ \
-maxdepth 1 -mindepth 1 -type d \
! -name riot \
! -name material-design-icons \
! -name material-design-* \
! -name dialog-polyfill \
! -name riotgear-router \
-exec rm -rf {} \; \
&& find node_modules/material-design-* \
-maxdepth 1 -mindepth 1 \
! -name package.json \
! -name iconfont \
! -name LICENSE \
! -name material* \
! -name dist \
-exec rm -rf {} \; \
&& find node_modules/material-design-lite/dist/ -maxdepth 1 -mindepth 1 \
! -name "*.js*" \
! -name "*.css*" \
-exec rm -rf {} \; \
&& npm cache clean
COPY . /usr/src/app
COPY static/*.* /usr/src/app/
COPY static/entrypoint /bin
EXPOSE 8080
ENTRYPOINT entrypoint

19
static/add.tag Normal file
View file

@ -0,0 +1,19 @@
<!--
Copyright (C) 2016 Jones Magloire @Joxit
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<add>
</add>

19
static/change.tag Normal file
View file

@ -0,0 +1,19 @@
<!--
Copyright (C) 2016 Jones Magloire @Joxit
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<change>
</change>

4
static/entrypoint Executable file
View file

@ -0,0 +1,4 @@
#!/bin/bash
sed -i "s,\${URL},${URL}," script.js
http-server $@

19
static/menu.tag Normal file
View file

@ -0,0 +1,19 @@
<!--
Copyright (C) 2016 Jones Magloire @Joxit
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<menu>
</menu>

26
static/script.js Normal file
View file

@ -0,0 +1,26 @@
/*
* Copyright (C) 2016 Jones Magloire @Joxit
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
var registryUI = {}
registryUI.url = function() {
return '${URL}';
}
registryUI.catalog = {};
registryUI.taglist = {};
riot.mount('catalog');
riot.mount('taglist');
riot.mount('app');