Skip to content

Commit 87d6f8f

Browse files
committed
Add Team NPM registry support
fixes #290 Exposed `npm.[domain]` and the default admin password can be changed by setting `NPM_PASSWORD` in the .env file.
1 parent ab3c771 commit 87d6f8f

2 files changed

Lines changed: 39 additions & 13 deletions

File tree

.env.example

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,6 @@ EMAIL_PASSWORD=""
2424

2525
### Docker Driver options
2626
DOCKER_DRIVER_PRIVATE_CA_PATH=""
27+
28+
### NPM Registry options
29+
NPM_PASSWORD=""

docker-compose.yml

Lines changed: 36 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,12 @@ configs:
4040
fileStore:
4141
enable: true
4242
url: http://file-server:3001
43+
npmRegistry:
44+
enabled: true
45+
url: http://npm:4873
46+
admin:
47+
username: admin
48+
password: ${NPM_PASSWORD:-secret}
4349
flowfuse_storage:
4450
content: |
4551
port: 3001
@@ -404,6 +410,20 @@ configs:
404410
emqx-api:
405411
content: |
406412
flowfuse:verySecret:administrator
413+
npm:
414+
content: |
415+
storage: /verdaccio/storage
416+
web:
417+
enable: false
418+
auth:
419+
ff-auth:
420+
baseURL: http://forge:3000
421+
adminUser: admin
422+
adminSecret: ${NPM_PASSWORD:-secret}
423+
packages:
424+
'@*/*':
425+
access: $authenticated
426+
log: { type: stdout, format: pretty, level: http }
407427
408428
services:
409429
nginx:
@@ -553,19 +573,21 @@ services:
553573
profiles:
554574
- autotls
555575

556-
# npm:
557-
# image: "verdaccio/verdaccio:5"
558-
# networks:
559-
# - flowforge
560-
# restart: always
561-
# environment:
562-
# - "VIRTUAL_HOST=npm.${DOMAIN:?error}"
563-
# - "VIRTUAL_PORT=4873"
564-
# volumes:
565-
# - "./npm/conf:/verdaccio/conf"
566-
# - "./npm/storage:/verdaccio/storage"
567-
# depends_on:
568-
# - nginx
576+
npm:
577+
image: "flowfuse-npm-registry"
578+
networks:
579+
- flowforge
580+
restart: always
581+
environment:
582+
- "VIRTUAL_HOST=npm.${DOMAIN:?error}"
583+
- "VIRTUAL_PORT=4873"
584+
configs:
585+
- source: npm/
586+
target: /verdaccio/conf/config.yaml
587+
volumes:
588+
- "npm:/verdaccio/storage"
589+
depends_on:
590+
- nginx
569591

570592
networks:
571593
flowforge:
@@ -578,3 +600,4 @@ volumes:
578600
fileStorage:
579601
acme:
580602
emqx:
603+
npm:

0 commit comments

Comments
 (0)