Add native dockerfile

This commit is contained in:
Zoe Roux 2022-11-01 00:59:40 +09:00
parent 856f42ce27
commit a065205ea0
No known key found for this signature in database
GPG Key ID: B2AB52A2636E5C46
6 changed files with 159 additions and 6 deletions

View File

@ -26,17 +26,31 @@ services:
front: front:
build: build:
context: ./front context: ./front
dockerfile: Dockerfile.dev dockerfile: Dockerfile.web.dev
volumes: volumes:
- ./front:/app - ./front:/app
- /app/.yarn - /app/.yarn
- /app/node-modules - /app/node_modules
- /app/packages/web/.next/ - /app/packages/web/.next/
ports: ports:
- "3000:3000" - "3000:3000"
restart: on-failure restart: on-failure
environment: environment:
- KYOO_URL=http://back:5000 - KYOO_URL=http://back:5000
native:
build:
context: ./front
dockerfile: Dockerfile.native.dev
volumes:
- ./front:/app
- /app/.yarn
- /app/node_modules
- /app/packages/native/.expo/
ports:
- "19000:19000"
restart: on-failure
environment:
- KYOO_URL=http://back:5000
ingress: ingress:
image: nginx image: nginx
restart: on-failure restart: on-failure

View File

@ -7,6 +7,7 @@ node_modules
npm-debug.log npm-debug.log
README.md README.md
.next .next
.expo
.git .git
.yarn .yarn
!.yarn/releases !.yarn/releases

View File

@ -4,6 +4,7 @@ COPY .yarn ./.yarn
COPY .yarnrc.yml ./ COPY .yarnrc.yml ./
COPY package.json yarn.lock ./ COPY package.json yarn.lock ./
COPY packages/web/package.json packages/web/package.json COPY packages/web/package.json packages/web/package.json
COPY packages/native/package.json packages/native/package.json
RUN yarn --immutable RUN yarn --immutable
COPY . . COPY . .
@ -18,6 +19,8 @@ WORKDIR /app
COPY --from=builder /app/packages/web/.next/standalone . COPY --from=builder /app/packages/web/.next/standalone .
COPY --from=builder /app/packages/web/.next/static ./.next/static/ COPY --from=builder /app/packages/web/.next/static ./.next/static/
COPY --from=builder /app/packages/web/public ./public COPY --from=builder /app/packages/web/public ./public
# Waiting for https://github.com/vercel/next.js/discussions/39432
# COPY --from=builder /app/packages/web/node_modules ./node_modules/
EXPOSE 8901 EXPOSE 8901
ENV PORT 8901 ENV PORT 8901

View File

@ -0,0 +1,13 @@
FROM node:16-alpine AS builder
WORKDIR /app
COPY .yarn ./.yarn
COPY .yarnrc.yml ./
COPY package.json yarn.lock ./
COPY packages/web/package.json packages/web/package.json
COPY packages/native/package.json packages/native/package.json
RUN yarn --immutable
EXPOSE 19000
ENV PORT 19000
CMD ["yarn", "native"]

View File

@ -5,6 +5,7 @@ COPY .yarn ./.yarn
COPY .yarnrc.yml ./ COPY .yarnrc.yml ./
COPY package.json yarn.lock ./ COPY package.json yarn.lock ./
COPY packages/web/package.json packages/web/package.json COPY packages/web/package.json packages/web/package.json
COPY packages/native/package.json packages/native/package.json
RUN yarn --immutable RUN yarn --immutable
ENV NEXT_TELEMETRY_DISABLED 1 ENV NEXT_TELEMETRY_DISABLED 1

View File

@ -1433,7 +1433,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.14.0, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.18.9, @babel/runtime@npm:^7.19.0, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.8.7": "@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.14.0, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.18.6, @babel/runtime@npm:^7.18.9, @babel/runtime@npm:^7.19.0, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.8.7":
version: 7.20.0 version: 7.20.0
resolution: "@babel/runtime@npm:7.20.0" resolution: "@babel/runtime@npm:7.20.0"
dependencies: dependencies:
@ -3028,6 +3028,15 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@types/react-native@npm:~0.69.1":
version: 0.69.15
resolution: "@types/react-native@npm:0.69.15"
dependencies:
"@types/react": "*"
checksum: 0bc47a051de4710f3c19f42c3c66dda3552489c65d8db24e3ca1a908790934fb722aaeb0a8a673bf2acba8f7a0ff0cc93b358d60662d4a8bfc8a2ad1017113dd
languageName: node
linkType: hard
"@types/react-transition-group@npm:^4.4.5": "@types/react-transition-group@npm:^4.4.5":
version: 4.4.5 version: 4.4.5
resolution: "@types/react-transition-group@npm:4.4.5" resolution: "@types/react-transition-group@npm:4.4.5"
@ -3037,7 +3046,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@types/react@npm:*": "@types/react@npm:*, @types/react@npm:~18.0.14":
version: 18.0.24 version: 18.0.24
resolution: "@types/react@npm:18.0.24" resolution: "@types/react@npm:18.0.24"
dependencies: dependencies:
@ -4757,6 +4766,16 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"create-react-class@npm:^15.7.0":
version: 15.7.0
resolution: "create-react-class@npm:15.7.0"
dependencies:
loose-envify: ^1.3.1
object-assign: ^4.1.1
checksum: 0c5f43da705fa9f67ec289051dd5780792652d440dfa17cd2c7d8423c1f604609596f895dabf46fda1960ddd93ee96fe1b61ef4d55a94fc4271b07d515486714
languageName: node
linkType: hard
"cross-fetch@npm:^3.1.5": "cross-fetch@npm:^3.1.5":
version: 3.1.5 version: 3.1.5
resolution: "cross-fetch@npm:3.1.5" resolution: "cross-fetch@npm:3.1.5"
@ -4811,6 +4830,16 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"css-in-js-utils@npm:^2.0.0":
version: 2.0.1
resolution: "css-in-js-utils@npm:2.0.1"
dependencies:
hyphenate-style-name: ^1.0.2
isobject: ^3.0.1
checksum: c9964c4708216954c468b69bbee2d971fd759ada4f40637b8ca4d3f79caba4818d0532a4f190ac560227c08742ad063ffec7a30afddc4d96b66a18c3a008f0d8
languageName: node
linkType: hard
"csstype@npm:^3.0.2, csstype@npm:^3.1.1": "csstype@npm:^3.0.2, csstype@npm:^3.1.1":
version: 3.1.1 version: 3.1.1
resolution: "csstype@npm:3.1.1" resolution: "csstype@npm:3.1.1"
@ -5987,7 +6016,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"fbjs@npm:^3.0.0": "fbjs@npm:^3.0.0, fbjs@npm:^3.0.4":
version: 3.0.4 version: 3.0.4
resolution: "fbjs@npm:3.0.4" resolution: "fbjs@npm:3.0.4"
dependencies: dependencies:
@ -6797,6 +6826,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"hyphenate-style-name@npm:^1.0.2":
version: 1.0.4
resolution: "hyphenate-style-name@npm:1.0.4"
checksum: 4f5bf4b055089754924babebaa23c17845937bcca6aee95d5d015f8fa1e6814279002bd6a9e541e3fac2cd02519fc76305396727066c57c8e21a7e73e7a12137
languageName: node
linkType: hard
"iconv-lite@npm:0.4.24": "iconv-lite@npm:0.4.24":
version: 0.4.24 version: 0.4.24
resolution: "iconv-lite@npm:0.4.24" resolution: "iconv-lite@npm:0.4.24"
@ -6910,6 +6946,15 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"inline-style-prefixer@npm:^6.0.1":
version: 6.0.1
resolution: "inline-style-prefixer@npm:6.0.1"
dependencies:
css-in-js-utils: ^2.0.0
checksum: 0bfa6fa89faa21e425c71425910c37c7b35a16ea753586c408fcc9246c84937c1b8184e6ce792139cda5de5cce8e1bc9eb0ba9f30968bdc97e7a06ece21c0737
languageName: node
linkType: hard
"internal-ip@npm:4.3.0": "internal-ip@npm:4.3.0":
version: 4.3.0 version: 4.3.0
resolution: "internal-ip@npm:4.3.0" resolution: "internal-ip@npm:4.3.0"
@ -7955,7 +8000,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"loose-envify@npm:^1.0.0, loose-envify@npm:^1.1.0, loose-envify@npm:^1.4.0": "loose-envify@npm:^1.0.0, loose-envify@npm:^1.1.0, loose-envify@npm:^1.3.1, loose-envify@npm:^1.4.0":
version: 1.4.0 version: 1.4.0
resolution: "loose-envify@npm:1.4.0" resolution: "loose-envify@npm:1.4.0"
dependencies: dependencies:
@ -9019,10 +9064,15 @@ __metadata:
resolution: "native@workspace:packages/native" resolution: "native@workspace:packages/native"
dependencies: dependencies:
"@babel/core": ^7.12.9 "@babel/core": ^7.12.9
"@types/react": ~18.0.14
"@types/react-native": ~0.69.1
expo: ~46.0.16 expo: ~46.0.16
expo-status-bar: ~1.4.0 expo-status-bar: ~1.4.0
react: 18.0.0 react: 18.0.0
react-dom: 18.0.0
react-native: 0.69.6 react-native: 0.69.6
react-native-web: ~0.18.7
typescript: ~4.3.5
languageName: unknown languageName: unknown
linkType: soft linkType: soft
@ -9238,6 +9288,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"normalize-css-color@npm:^1.0.2":
version: 1.0.2
resolution: "normalize-css-color@npm:1.0.2"
checksum: 7433dc995a8d27c9384059ef0b52ceef47f4fab1bab55f1f085058b27e7472466ce321f46391fc85b6851db5212b9bd2bf55f5dc361da01a8a8cf4c360f69dab
languageName: node
linkType: hard
"normalize-path@npm:^3.0.0": "normalize-path@npm:^3.0.0":
version: 3.0.0 version: 3.0.0
resolution: "normalize-path@npm:3.0.0" resolution: "normalize-path@npm:3.0.0"
@ -9796,6 +9853,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"postcss-value-parser@npm:^4.2.0":
version: 4.2.0
resolution: "postcss-value-parser@npm:4.2.0"
checksum: 819ffab0c9d51cf0acbabf8996dffbfafbafa57afc0e4c98db88b67f2094cb44488758f06e5da95d7036f19556a4a732525e84289a425f4f6fd8e412a9d7442f
languageName: node
linkType: hard
"postcss@npm:8.4.5": "postcss@npm:8.4.5":
version: 8.4.5 version: 8.4.5
resolution: "postcss@npm:8.4.5" resolution: "postcss@npm:8.4.5"
@ -10024,6 +10088,18 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"react-dom@npm:18.0.0":
version: 18.0.0
resolution: "react-dom@npm:18.0.0"
dependencies:
loose-envify: ^1.1.0
scheduler: ^0.21.0
peerDependencies:
react: ^18.0.0
checksum: dd0ba9f2f31dd728076c892a95b2f5a8dfe79136431b0289afb46eec39d0ca6b6f0f40a60fd8aa6ef702c98ce7c26100d3d4dbc35c7c9e87429cd04f84cb58bd
languageName: node
linkType: hard
"react-dom@npm:18.2.0": "react-dom@npm:18.2.0":
version: 18.2.0 version: 18.2.0
resolution: "react-dom@npm:18.2.0" resolution: "react-dom@npm:18.2.0"
@ -10087,6 +10163,24 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"react-native-web@npm:~0.18.7":
version: 0.18.9
resolution: "react-native-web@npm:0.18.9"
dependencies:
"@babel/runtime": ^7.18.6
create-react-class: ^15.7.0
fbjs: ^3.0.4
inline-style-prefixer: ^6.0.1
normalize-css-color: ^1.0.2
postcss-value-parser: ^4.2.0
styleq: ^0.1.2
peerDependencies:
react: ^17.0.2 || ^18.0.0
react-dom: ^17.0.2 || ^18.0.0
checksum: 2cd2c08d8ff92bf969a54124d21f101e8d4645b1eb0625aeabccc70ba55b05c0d1fc6ab570b237417be674346d140edc387c5deac403050a9e1f1d87b15b2253
languageName: node
linkType: hard
"react-native@npm:0.69.6": "react-native@npm:0.69.6":
version: 0.69.6 version: 0.69.6
resolution: "react-native@npm:0.69.6" resolution: "react-native@npm:0.69.6"
@ -11292,6 +11386,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"styleq@npm:^0.1.2":
version: 0.1.2
resolution: "styleq@npm:0.1.2"
checksum: 050be47448efcb4abd778629ebe09f2db138e0b59504e8442e35432387d98bd696f0efe6962965c26eff5ee54a30ba4615806761b8f040a47874a62dd237e09f
languageName: node
linkType: hard
"stylis@npm:4.1.3": "stylis@npm:4.1.3":
version: 4.1.3 version: 4.1.3
resolution: "stylis@npm:4.1.3" resolution: "stylis@npm:4.1.3"
@ -11786,6 +11887,16 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"typescript@npm:~4.3.5":
version: 4.3.5
resolution: "typescript@npm:4.3.5"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
checksum: bab033b5e2b0790dd35b77fd005df976ef80b8d84fd2c6e63cc31808151875beae9216e5a315fe7068e8499905c3c354248fe83272cdfc13b7705635f0c66c97
languageName: node
linkType: hard
"typescript@patch:typescript@4.7.4#~builtin<compat/typescript>": "typescript@patch:typescript@4.7.4#~builtin<compat/typescript>":
version: 4.7.4 version: 4.7.4
resolution: "typescript@patch:typescript@npm%3A4.7.4#~builtin<compat/typescript>::version=4.7.4&hash=701156" resolution: "typescript@patch:typescript@npm%3A4.7.4#~builtin<compat/typescript>::version=4.7.4&hash=701156"
@ -11806,6 +11917,16 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"typescript@patch:typescript@~4.3.5#~builtin<compat/typescript>":
version: 4.3.5
resolution: "typescript@patch:typescript@npm%3A4.3.5#~builtin<compat/typescript>::version=4.3.5&hash=701156"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
checksum: 365df18cf979c971ef9543b2acaa8694377a803f98e1804c41d0ede0b09d7046cb0cd98f2eaf3884b0fe923c01a60af1f653841bd8805c9715d5479c09a4ebe4
languageName: node
linkType: hard
"ua-parser-js@npm:^0.7.30": "ua-parser-js@npm:^0.7.30":
version: 0.7.32 version: 0.7.32
resolution: "ua-parser-js@npm:0.7.32" resolution: "ua-parser-js@npm:0.7.32"