...
This commit is contained in:
		
							
								
								
									
										50
									
								
								.devcontainer/devcontainer.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								.devcontainer/devcontainer.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | ||||
| // For format details, see https://aka.ms/devcontainer.json. For config options, see the | ||||
| // README at: https://github.com/devcontainers/templates/tree/main/src/javascript-node | ||||
| { | ||||
| 	"name": "buntest", | ||||
| 	"image": "despiegk/devel:latest", | ||||
|  | ||||
| 	"features": { | ||||
| 	}, | ||||
|  | ||||
| 	// Configure tool-specific properties. | ||||
| 	"customizations": { | ||||
| 		// Configure properties specific to VS Code. | ||||
| 		"vscode": { | ||||
| 			"settings": {}, | ||||
| 			"extensions": [ | ||||
| 				"saoudrizwan.claude-dev", | ||||
| 				"ms-vscode.vscode-typescript-next", | ||||
| 				"mhutchie.git-graph", | ||||
| 				"donjayamanne.git-extension-pack" | ||||
| 			] | ||||
| 		} | ||||
| 	}, | ||||
|  | ||||
| 	"mounts": [ | ||||
| 		"source=${localEnv:HOME}/code,target=/root/code,type=bind,consistency=cached" | ||||
| 	], | ||||
|  | ||||
| 	"forwardPorts": [3000, 6379], | ||||
|  | ||||
| 	// Use 'portsAttributes' to set default properties for specific forwarded ports.  | ||||
| 	// More info: https://containers.dev/implementors/json_reference/#port-attributes | ||||
| 	"portsAttributes": { | ||||
| 		"3000": { | ||||
| 			"label": "Hello Remote World", | ||||
| 			"onAutoForward": "notify" | ||||
| 		}, | ||||
| 		"6379": { | ||||
| 			"label": "Redis", | ||||
| 			"onAutoForward": "notify" | ||||
| 		} | ||||
| 	}, | ||||
|  | ||||
| 	// Use 'postCreateCommand' to run commands after the container is created. | ||||
| 	"postCreateCommand": "bun install", | ||||
|  | ||||
| 	// Use 'postStartCommand' to start the server automatically | ||||
| 	"postStartCommand": "bun run start", | ||||
|  | ||||
| 	"remoteUser": "root" | ||||
| } | ||||
							
								
								
									
										42
									
								
								.devcontainer_archive/devcontainer.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								.devcontainer_archive/devcontainer.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,42 @@ | ||||
|  | ||||
| // For format details, see https://aka.ms/devcontainer.json. For config options, see the | ||||
| // README at: https://github.com/devcontainers/templates/tree/main/src/javascript-node | ||||
| { | ||||
| 	"name": "mybun", | ||||
| 	// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile | ||||
| 	//"image": "oven/bun", | ||||
| 	"dockerComposeFile": ["docker-compose.yml"], | ||||
| 	"service": "mybun", | ||||
|  | ||||
| 	// Features to add to the dev container. More info: https://containers.dev/features. | ||||
| 	// "features": {}, | ||||
|  | ||||
| 	// Configure tool-specific properties. | ||||
| 	"customizations": { | ||||
| 		// Configure properties specific to VS Code. | ||||
| 		"vscode": { | ||||
| 			"settings": {}, | ||||
| 			"extensions": [ | ||||
| 				"streetsidesoftware.code-spell-checker" | ||||
| 			] | ||||
| 		} | ||||
| 	}, | ||||
|  | ||||
| 	// Use 'forwardPorts' to make a list of ports inside the container available locally. | ||||
| 	// "forwardPorts": [3000], | ||||
|  | ||||
| 	// Use 'portsAttributes' to set default properties for specific forwarded ports.  | ||||
| 	// More info: https://containers.dev/implementors/json_reference/#port-attributes | ||||
| 	"portsAttributes": { | ||||
| 		"3000": { | ||||
| 			"label": "Hello Remote World", | ||||
| 			"onAutoForward": "notify" | ||||
| 		} | ||||
| 	}, | ||||
|  | ||||
| 	// Use 'postCreateCommand' to run commands after the container is created. | ||||
| 	"postCreateCommand": "yarn install" | ||||
|  | ||||
| 	// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. | ||||
| 	// "remoteUser": "root" | ||||
| } | ||||
							
								
								
									
										17
									
								
								.devcontainer_archive/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								.devcontainer_archive/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| version: "3.8" | ||||
|  | ||||
| services: | ||||
|   mybun: | ||||
|     image: oven/bun | ||||
|     volumes: | ||||
|       - .:/workspace:cached | ||||
|     working_dir: /workspace | ||||
|     ports: | ||||
|       - "3000:3000" | ||||
|     command: ["sleep", "infinity"] # Keep the container running | ||||
|  | ||||
|   redis: | ||||
|     image: redis:latest | ||||
|     ports: | ||||
|       - "6379:6379" | ||||
|     restart: unless-stopped | ||||
							
								
								
									
										21
									
								
								.eslintrc.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								.eslintrc.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
| { | ||||
| 	"root": true, | ||||
| 	"env": { | ||||
| 		"node": true, | ||||
| 		"es6": true | ||||
| 	}, | ||||
| 	"rules": { | ||||
| 		"no-console": 0, | ||||
| 		"eqeqeq":"warn", | ||||
| 		"no-cond-assign": 0, | ||||
| 		"no-unused-vars": 1, | ||||
| 		"no-extra-semi": "warn", | ||||
| 		"semi": "warn" | ||||
| 	}, | ||||
| 	"extends": "eslint:recommended", | ||||
| 	"parserOptions": { | ||||
| 		"ecmaFeatures": { | ||||
| 			"experimentalObjectRestSpread": true | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
							
								
								
									
										3
									
								
								.gitattributes
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.gitattributes
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| * text=auto eol=lf | ||||
| *.{cmd,[cC][mM][dD]} text eol=crlf | ||||
| *.{bat,[bB][aA][tT]} text eol=crlf | ||||
							
								
								
									
										338
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										338
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,338 @@ | ||||
| ## Ignore Visual Studio temporary files, build results, and | ||||
| ## files generated by popular Visual Studio add-ons. | ||||
| ## | ||||
| ## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore | ||||
|  | ||||
| # User-specific files | ||||
| *.suo | ||||
| *.user | ||||
| *.userosscache | ||||
| *.sln.docstates | ||||
|  | ||||
| # User-specific files (MonoDevelop/Xamarin Studio) | ||||
| *.userprefs | ||||
|  | ||||
| # Build results | ||||
| [Dd]ebug/ | ||||
| [Dd]ebugPublic/ | ||||
| [Rr]elease/ | ||||
| [Rr]eleases/ | ||||
| x64/ | ||||
| x86/ | ||||
| bld/ | ||||
| [Bb]in/ | ||||
| [Oo]bj/ | ||||
| [Ll]og/ | ||||
|  | ||||
| # Visual Studio 2015/2017 cache/options directory | ||||
| .vs/ | ||||
| # Uncomment if you have tasks that create the project's static files in wwwroot | ||||
| #wwwroot/ | ||||
|  | ||||
| # Visual Studio 2017 auto generated files | ||||
| Generated\ Files/ | ||||
|  | ||||
| # MSTest test Results | ||||
| [Tt]est[Rr]esult*/ | ||||
| [Bb]uild[Ll]og.* | ||||
|  | ||||
| # NUNIT | ||||
| *.VisualState.xml | ||||
| TestResult.xml | ||||
|  | ||||
| # Build Results of an ATL Project | ||||
| [Dd]ebugPS/ | ||||
| [Rr]eleasePS/ | ||||
| dlldata.c | ||||
|  | ||||
| # Benchmark Results | ||||
| BenchmarkDotNet.Artifacts/ | ||||
|  | ||||
| # .NET Core | ||||
| project.lock.json | ||||
| project.fragment.lock.json | ||||
| artifacts/ | ||||
| **/Properties/launchSettings.json | ||||
|  | ||||
| # StyleCop | ||||
| StyleCopReport.xml | ||||
|  | ||||
| # Files built by Visual Studio | ||||
| *_i.c | ||||
| *_p.c | ||||
| *_i.h | ||||
| *.ilk | ||||
| *.meta | ||||
| *.obj | ||||
| *.iobj | ||||
| *.pch | ||||
| *.pdb | ||||
| *.ipdb | ||||
| *.pgc | ||||
| *.pgd | ||||
| *.rsp | ||||
| *.sbr | ||||
| *.tlb | ||||
| *.tli | ||||
| *.tlh | ||||
| *.tmp | ||||
| *.tmp_proj | ||||
| *.log | ||||
| *.vspscc | ||||
| *.vssscc | ||||
| .builds | ||||
| *.pidb | ||||
| *.svclog | ||||
| *.scc | ||||
|  | ||||
| # Chutzpah Test files | ||||
| _Chutzpah* | ||||
|  | ||||
| # Visual C++ cache files | ||||
| ipch/ | ||||
| *.aps | ||||
| *.ncb | ||||
| *.opendb | ||||
| *.opensdf | ||||
| *.sdf | ||||
| *.cachefile | ||||
| *.VC.db | ||||
| *.VC.VC.opendb | ||||
|  | ||||
| # Visual Studio profiler | ||||
| *.psess | ||||
| *.vsp | ||||
| *.vspx | ||||
| *.sap | ||||
|  | ||||
| # Visual Studio Trace Files | ||||
| *.e2e | ||||
|  | ||||
| # TFS 2012 Local Workspace | ||||
| $tf/ | ||||
|  | ||||
| # Guidance Automation Toolkit | ||||
| *.gpState | ||||
|  | ||||
| # ReSharper is a .NET coding add-in | ||||
| _ReSharper*/ | ||||
| *.[Rr]e[Ss]harper | ||||
| *.DotSettings.user | ||||
|  | ||||
| # JustCode is a .NET coding add-in | ||||
| .JustCode | ||||
|  | ||||
| # TeamCity is a build add-in | ||||
| _TeamCity* | ||||
|  | ||||
| # DotCover is a Code Coverage Tool | ||||
| *.dotCover | ||||
|  | ||||
| # AxoCover is a Code Coverage Tool | ||||
| .axoCover/* | ||||
| !.axoCover/settings.json | ||||
|  | ||||
| # Visual Studio code coverage results | ||||
| *.coverage | ||||
| *.coveragexml | ||||
|  | ||||
| # NCrunch | ||||
| _NCrunch_* | ||||
| .*crunch*.local.xml | ||||
| nCrunchTemp_* | ||||
|  | ||||
| # MightyMoose | ||||
| *.mm.* | ||||
| AutoTest.Net/ | ||||
|  | ||||
| # Web workbench (sass) | ||||
| .sass-cache/ | ||||
|  | ||||
| # Installshield output folder | ||||
| [Ee]xpress/ | ||||
|  | ||||
| # DocProject is a documentation generator add-in | ||||
| DocProject/buildhelp/ | ||||
| DocProject/Help/*.HxT | ||||
| DocProject/Help/*.HxC | ||||
| DocProject/Help/*.hhc | ||||
| DocProject/Help/*.hhk | ||||
| DocProject/Help/*.hhp | ||||
| DocProject/Help/Html2 | ||||
| DocProject/Help/html | ||||
|  | ||||
| # Click-Once directory | ||||
| publish/ | ||||
|  | ||||
| # Publish Web Output | ||||
| *.[Pp]ublish.xml | ||||
| *.azurePubxml | ||||
| # Note: Comment the next line if you want to checkin your web deploy settings, | ||||
| # but database connection strings (with potential passwords) will be unencrypted | ||||
| *.pubxml | ||||
| *.publishproj | ||||
|  | ||||
| # Microsoft Azure Web App publish settings. Comment the next line if you want to | ||||
| # checkin your Azure Web App publish settings, but sensitive information contained | ||||
| # in these scripts will be unencrypted | ||||
| PublishScripts/ | ||||
|  | ||||
| # NuGet Packages | ||||
| *.nupkg | ||||
| # The packages folder can be ignored because of Package Restore | ||||
| **/[Pp]ackages/* | ||||
| # except build/, which is used as an MSBuild target. | ||||
| !**/[Pp]ackages/build/ | ||||
| # Uncomment if necessary however generally it will be regenerated when needed | ||||
| #!**/[Pp]ackages/repositories.config | ||||
| # NuGet v3's project.json files produces more ignorable files | ||||
| *.nuget.props | ||||
| *.nuget.targets | ||||
|  | ||||
| # Microsoft Azure Build Output | ||||
| csx/ | ||||
| *.build.csdef | ||||
|  | ||||
| # Microsoft Azure Emulator | ||||
| ecf/ | ||||
| rcf/ | ||||
|  | ||||
| # Windows Store app package directories and files | ||||
| AppPackages/ | ||||
| BundleArtifacts/ | ||||
| Package.StoreAssociation.xml | ||||
| _pkginfo.txt | ||||
| *.appx | ||||
|  | ||||
| # Visual Studio cache files | ||||
| # files ending in .cache can be ignored | ||||
| *.[Cc]ache | ||||
| # but keep track of directories ending in .cache | ||||
| !*.[Cc]ache/ | ||||
|  | ||||
| # Others | ||||
| ClientBin/ | ||||
| ~$* | ||||
| *~ | ||||
| *.dbmdl | ||||
| *.dbproj.schemaview | ||||
| *.jfm | ||||
| *.pfx | ||||
| *.publishsettings | ||||
| orleans.codegen.cs | ||||
|  | ||||
| # Including strong name files can present a security risk  | ||||
| # (https://github.com/github/gitignore/pull/2483#issue-259490424) | ||||
| #*.snk | ||||
|  | ||||
| # Since there are multiple workflows, uncomment next line to ignore bower_components | ||||
| # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) | ||||
| #bower_components/ | ||||
|  | ||||
| # RIA/Silverlight projects | ||||
| Generated_Code/ | ||||
|  | ||||
| # Backup & report files from converting an old project file | ||||
| # to a newer Visual Studio version. Backup files are not needed, | ||||
| # because we have git ;-) | ||||
| _UpgradeReport_Files/ | ||||
| Backup*/ | ||||
| UpgradeLog*.XML | ||||
| UpgradeLog*.htm | ||||
| ServiceFabricBackup/ | ||||
| *.rptproj.bak | ||||
|  | ||||
| # SQL Server files | ||||
| *.mdf | ||||
| *.ldf | ||||
| *.ndf | ||||
|  | ||||
| # Business Intelligence projects | ||||
| *.rdl.data | ||||
| *.bim.layout | ||||
| *.bim_*.settings | ||||
| *.rptproj.rsuser | ||||
|  | ||||
| # Microsoft Fakes | ||||
| FakesAssemblies/ | ||||
|  | ||||
| # GhostDoc plugin setting file | ||||
| *.GhostDoc.xml | ||||
|  | ||||
| # Node.js Tools for Visual Studio | ||||
| .ntvs_analysis.dat | ||||
| node_modules/ | ||||
|  | ||||
| # Visual Studio 6 build log | ||||
| *.plg | ||||
|  | ||||
| # Visual Studio 6 workspace options file | ||||
| *.opt | ||||
|  | ||||
| # Visual Studio 6 auto-generated workspace file (contains which files were open etc.) | ||||
| *.vbw | ||||
|  | ||||
| # Visual Studio LightSwitch build output | ||||
| **/*.HTMLClient/GeneratedArtifacts | ||||
| **/*.DesktopClient/GeneratedArtifacts | ||||
| **/*.DesktopClient/ModelManifest.xml | ||||
| **/*.Server/GeneratedArtifacts | ||||
| **/*.Server/ModelManifest.xml | ||||
| _Pvt_Extensions | ||||
|  | ||||
| # Paket dependency manager | ||||
| .paket/paket.exe | ||||
| paket-files/ | ||||
|  | ||||
| # FAKE - F# Make | ||||
| .fake/ | ||||
|  | ||||
| # JetBrains Rider | ||||
| .idea/ | ||||
| *.sln.iml | ||||
|  | ||||
| # CodeRush | ||||
| .cr/ | ||||
|  | ||||
| # Python Tools for Visual Studio (PTVS) | ||||
| __pycache__/ | ||||
| *.pyc | ||||
|  | ||||
| # Cake - Uncomment if you are using it | ||||
| # tools/** | ||||
| # !tools/packages.config | ||||
|  | ||||
| # Tabs Studio | ||||
| *.tss | ||||
|  | ||||
| # Telerik's JustMock configuration file | ||||
| *.jmconfig | ||||
|  | ||||
| # BizTalk build output | ||||
| *.btp.cs | ||||
| *.btm.cs | ||||
| *.odx.cs | ||||
| *.xsd.cs | ||||
|  | ||||
| # OpenCover UI analysis results | ||||
| OpenCover/ | ||||
|  | ||||
| # Azure Stream Analytics local run output  | ||||
| ASALocalRun/ | ||||
|  | ||||
| # MSBuild Binary and Structured Log | ||||
| *.binlog | ||||
|  | ||||
| # NVidia Nsight GPU debugger configuration file | ||||
| *.nvuser | ||||
|  | ||||
| # MFractors (Xamarin productivity tool) working folder  | ||||
| .mfractor/ | ||||
|  | ||||
| *.DS_Store | ||||
|  | ||||
| out | ||||
|  | ||||
| bun.lockdb | ||||
|  | ||||
| node_modules | ||||
							
								
								
									
										21
									
								
								LICENSE
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								LICENSE
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
|     MIT License | ||||
|  | ||||
|     Copyright (c) Microsoft Corporation. All rights reserved. | ||||
|  | ||||
|     Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
|     of this software and associated documentation files (the "Software"), to deal | ||||
|     in the Software without restriction, including without limitation the rights | ||||
|     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
|     copies of the Software, and to permit persons to whom the Software is | ||||
|     furnished to do so, subject to the following conditions: | ||||
|  | ||||
|     The above copyright notice and this permission notice shall be included in all | ||||
|     copies or substantial portions of the Software. | ||||
|  | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
|     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
|     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
|     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
|     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
|     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||
|     SOFTWARE | ||||
							
								
								
									
										2
									
								
								build.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								build.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| #!/bin/bash | ||||
| cd dockerbuilder && docker build -t bun-alpine:latest . | ||||
							
								
								
									
										30
									
								
								dockerbuilder/Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								dockerbuilder/Dockerfile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| # Use Ubuntu 24.04 as the base image | ||||
| FROM ubuntu:24.04 | ||||
|  | ||||
| # Set environment variables | ||||
| ENV DEBIAN_FRONTEND=noninteractive \ | ||||
|     LANG=C.UTF-8 \ | ||||
|     PATH="/root/.bun/bin:$PATH" | ||||
|  | ||||
| RUN apt-get update \ | ||||
|     && apt-get install -y --no-install-recommends ca-certificates curl build-essential redis unzip \ | ||||
|     && curl -fsSL https://bun.sh/install | bash \ | ||||
|     && bun -v \ | ||||
|     && redis-server --daemonize yes \ | ||||
|     && curl -fsSL https://raw.githubusercontent.com/freeflowuniverse/crystallib/development/scripts/installer.sh > /tmp/install.sh \ | ||||
|     && bash /tmp/install.sh \ | ||||
|     && rm -f /tmp/install.sh \ | ||||
|     && redis-cli shutdown \ | ||||
|     && apt-get clean \ | ||||
|     && apt-get autoremove -y \ | ||||
|     && rm -rf /var/lib/apt/lists/* \ | ||||
|     && rm -rf /var/cache/apt/archives/* \ | ||||
|     && rm -rf /var/log/* \ | ||||
|     && rm -rf /var/tmp/* \ | ||||
|     && rm -rf /tmp/* \ | ||||
|     && rm -rf /root/.cache/* || true         | ||||
|  | ||||
| # Expose application port | ||||
| EXPOSE 3000 | ||||
|  | ||||
| CMD ["redis-server"] | ||||
							
								
								
									
										20
									
								
								dockerbuilder/build_arm.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										20
									
								
								dockerbuilder/build_arm.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,20 @@ | ||||
| #!/bin/bash | ||||
|  | ||||
| # Check if --no-cache argument is provided | ||||
| NO_CACHE="" | ||||
| if [ "$1" == "--no-cache" ]; then | ||||
|     NO_CACHE="--no-cache" | ||||
| fi | ||||
|  | ||||
| # Build with: | ||||
| # 1. Build arguments for better cache control | ||||
| # 2. Compression and squashing for smaller image size | ||||
| # 3. Platform specification for better compatibility | ||||
| docker build \ | ||||
|     $NO_CACHE \ | ||||
|     --compress \ | ||||
|     --force-rm \ | ||||
|     --build-arg BUILDKIT_INLINE_CACHE=1 \ | ||||
|     --platform linux/arm64 \ | ||||
|     -t despiegk/devel:latest \ | ||||
|     . | ||||
							
								
								
									
										1
									
								
								dockerbuilder/push.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								dockerbuilder/push.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| docker push despiegk/devel:latest | ||||
							
								
								
									
										2
									
								
								dockerbuilder/shell.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										2
									
								
								dockerbuilder/shell.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| #!/bin/bash | ||||
| docker run -it --rm despiegk/devel:latest  /bin/bash | ||||
							
								
								
									
										15
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | ||||
| { | ||||
|   "name": "docker_web_app", | ||||
|   "version": "1.0.0", | ||||
|   "description": "Node.js on Docker", | ||||
|   "author": "First Last <first.last@example.com>", | ||||
|   "main": "server.js", | ||||
|   "type": "module", | ||||
|   "private": true, | ||||
|   "scripts": { | ||||
|     "start": "bun run server.js" | ||||
|   }, | ||||
|   "dependencies": { | ||||
|     "express": "^4.20.0" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										19
									
								
								server.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								server.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | ||||
| /*--------------------------------------------------------------------------------------------- | ||||
|  *  Copyright (c) Microsoft Corporation. All rights reserved. | ||||
|  *  Licensed under the MIT License. See License.txt in the project root for license information. | ||||
|  *--------------------------------------------------------------------------------------------*/ | ||||
|  | ||||
| import express from 'express'; | ||||
|  | ||||
| // Constants | ||||
| const PORT = 3000; | ||||
| const HOST = '0.0.0.0'; | ||||
|  | ||||
| // App | ||||
| const app = express(); | ||||
| app.get('/', (req, res) => { | ||||
|     res.send('Hello remote world!\n'); | ||||
| }); | ||||
|  | ||||
| app.listen(PORT, HOST); | ||||
| console.log(`Running on http://${HOST}:${PORT}`); | ||||
		Reference in New Issue
	
	Block a user