init
This commit is contained in:
10
Dockerfile
Normal file
10
Dockerfile
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
FROM verdaccio/verdaccio
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV NODE_ENV=production
|
||||||
|
|
||||||
|
RUN yarn install
|
||||||
|
RUN yarn add verdaccio-github-oauth-ui
|
||||||
|
COPY config.yaml /verdaccio/conf
|
||||||
|
USER verdaccio
|
||||||
15
Readme.md
Normal file
15
Readme.md
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
## What is this?
|
||||||
|
|
||||||
|
This is a deploy to [render](https://render.com) button for [Verdaccio](https://verdaccio.org/) with github authentication enabled. Render is akin to heroku but has persistent storage, and generally much cheaper (includes a free tier).
|
||||||
|
|
||||||
|
[](https://render.com/deploy)
|
||||||
|
|
||||||
|
## How to use this
|
||||||
|
|
||||||
|
* Fork this repo. **You must not use this repo to press the button** if you do any changes to this repo will sync to your infrastructure.
|
||||||
|
* Press the button in your fork
|
||||||
|
|
||||||
|
|
||||||
|
## Looking for a clean slate?
|
||||||
|
|
||||||
|
Checkout [my plain template here](https://github.com/TerribleDev/verdaccio-deploy-to-render)
|
||||||
96
config.yaml
Normal file
96
config.yaml
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
#
|
||||||
|
# This is the config file used for the docker images.
|
||||||
|
# It allows all users to do anything, so don't use it on production systems.
|
||||||
|
#
|
||||||
|
# Do not configure host and port under `listen` in this file
|
||||||
|
# as it will be ignored when using docker.
|
||||||
|
# see https://verdaccio.org/docs/en/docker#docker-and-custom-port-configuration
|
||||||
|
#
|
||||||
|
# Look here for more config file examples:
|
||||||
|
# https://github.com/verdaccio/verdaccio/tree/master/conf
|
||||||
|
#
|
||||||
|
|
||||||
|
# path to a directory with all packages
|
||||||
|
storage: /verdaccio/storage/data
|
||||||
|
# path to a directory with plugins to include
|
||||||
|
plugins: /verdaccio/plugins
|
||||||
|
|
||||||
|
web:
|
||||||
|
# WebUI is enabled as default, if you want disable it, just uncomment this line
|
||||||
|
#enable: false
|
||||||
|
title: Verdaccio
|
||||||
|
# comment out to disable gravatar support
|
||||||
|
# gravatar: false
|
||||||
|
# by default packages are ordercer ascendant (asc|desc)
|
||||||
|
# sort_packages: asc
|
||||||
|
# darkMode: true
|
||||||
|
# logo: http://somedomain/somelogo.png
|
||||||
|
# favicon: http://somedomain/favicon.ico | /path/favicon.ico
|
||||||
|
# rateLimit:
|
||||||
|
# windowMs: 1000
|
||||||
|
# max: 10000
|
||||||
|
|
||||||
|
# translate your registry, api i18n not available yet
|
||||||
|
# i18n:
|
||||||
|
# list of the available translations https://github.com/verdaccio/ui/tree/master/i18n/translations
|
||||||
|
# web: en-US
|
||||||
|
|
||||||
|
auth:
|
||||||
|
github-oauth-ui:
|
||||||
|
client-id: GITHUB_CLIENT_ID
|
||||||
|
client-secret: GITHUB_CLIENT_SECRET
|
||||||
|
org: GITHUB_ORG
|
||||||
|
|
||||||
|
# a list of other known repositories we can talk to
|
||||||
|
uplinks:
|
||||||
|
npmjs:
|
||||||
|
url: https://registry.npmjs.org/
|
||||||
|
|
||||||
|
packages:
|
||||||
|
'@*/*':
|
||||||
|
# scoped packages
|
||||||
|
access: $authenticated
|
||||||
|
publish: $authenticated
|
||||||
|
unpublish: $authenticated
|
||||||
|
proxy: npmjs
|
||||||
|
|
||||||
|
'**':
|
||||||
|
# you can specify usernames/groupnames (depending on your auth plugin)
|
||||||
|
# and three keywords: "$all", "$anonymous", "$authenticated"
|
||||||
|
access: $authenticated
|
||||||
|
|
||||||
|
# allow all known users to publish/publish packages
|
||||||
|
# (anyone can register by default, remember?)
|
||||||
|
publish: $authenticated
|
||||||
|
unpublish: $authenticated
|
||||||
|
|
||||||
|
# if package is not available locally, proxy requests to 'npmjs' registry
|
||||||
|
proxy: npmjs
|
||||||
|
|
||||||
|
# You can specify HTTP/1.1 server keep alive timeout in seconds for incoming connections.
|
||||||
|
# A value of 0 makes the http server behave similarly to Node.js versions prior to 8.0.0, which did not have a keep-alive timeout.
|
||||||
|
# WORKAROUND: Through given configuration you can workaround following issue https://github.com/verdaccio/verdaccio/issues/301. Set to 0 in case 60 is not enough.
|
||||||
|
server:
|
||||||
|
keepAliveTimeout: 60
|
||||||
|
|
||||||
|
middlewares:
|
||||||
|
github-oauth-ui:
|
||||||
|
enabled: true
|
||||||
|
|
||||||
|
# log settings
|
||||||
|
logs: { type: stdout, format: pretty, level: http }
|
||||||
|
user_agent: true
|
||||||
|
#experiments:
|
||||||
|
# # support for npm token command
|
||||||
|
# token: false
|
||||||
|
# # enable tarball URL redirect for hosting tarball with a different server, the tarball_url_redirect can be a template string
|
||||||
|
# tarball_url_redirect: 'https://mycdn.com/verdaccio/${packageName}/${filename}'
|
||||||
|
# # the tarball_url_redirect can be a function, takes packageName and filename and returns the url, when working with a js configuration file
|
||||||
|
# tarball_url_redirect(packageName, filename) {
|
||||||
|
# const signedUrl = // generate a signed url
|
||||||
|
# return signedUrl;
|
||||||
|
# }
|
||||||
|
|
||||||
|
# This affect the web and api (not developed yet)
|
||||||
|
#i18n:
|
||||||
|
#web: en-US
|
||||||
17
render.yaml
Normal file
17
render.yaml
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
services:
|
||||||
|
- type: web
|
||||||
|
name: verdaccio
|
||||||
|
region: oregon # optional (defaults to oregon)
|
||||||
|
plan: starter # optional (defaults to starter)
|
||||||
|
env: docker
|
||||||
|
disk:
|
||||||
|
name: verdaccio-data
|
||||||
|
mountPath: /verdaccio/storage
|
||||||
|
sizeGB: 1 # optional
|
||||||
|
envVars:
|
||||||
|
- key: GITHUB_CLIENT_ID
|
||||||
|
sync: false
|
||||||
|
- key: GITHUB_CLIENT_SECRET
|
||||||
|
sync: false
|
||||||
|
- key: GITHUB_ORG
|
||||||
|
sync: false
|
||||||
Reference in New Issue
Block a user