GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Proposal: Introduce Dockerfiles for nanoserver by StefanScherer · Pull Request #223 · nodejs/docker-node

Conversation

@StefanScherer

@StefanScherer StefanScherer commented Aug 25, 2016 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

As mentioned in #222 here is a proposal to build Windows Docker images with Node.js 4.7.0, 6.9.2 and 7.2.1 based on the Windows nanoserver base image.

This allows Windows 10 1607 and Server 2016 users build and run Node.js in a Docker container.

The test-build.ps1 can be called to build the images, either on a Windows 10 machine or a Windows Server 2016 machine. It downloads the ZIP files for Node.js 4.7.0, 6.9.2 and 7.2.1 and builds these Docker images:

  • node:4.7.0-nanoserver
  • node:4.7.0-nanoserver-onbuild
  • node:6.9.2-nanoserver
  • node:6.9.2-nanoserver-onbuild
  • node:7.2.1-nanoserver
  • node:7.2.1-nanoserver-onbuild

For information about how to get Docker running on Windows, please see the relevant "Quick Start" guide provided by Microsoft:

  • Windows Server Quick Start
  • Windows 10 Quick Start

or use Docker for Windows Beta 26++ to try this PR.

Notes:

Using curl or wget in PowerShell in NanoServer is far from easy. The only working example I used for this Dockerfiles is from nanoserver/golang in the Microsoft/Virtualization-Documentation repo.

Further thoughts about size:

My previous work which just does a COPY deployment of Node.js into a nanoserver container image and results in smaller Docker images than running the PowerShell script downloading the ZIP etc.

PS C:\Users\vagrant\docker-node> docker images
REPOSITORY                   TAG                        IMAGE ID            CREATED              SIZE
node                         6.4.0-nanoserver-onbuild   e1dae6267768        About a minute ago   1.006 GB
node                         6.4.0-nanoserver           7737552eb883        About a minute ago   1.004 GB
node                         4.5.0-nanoserver-onbuild   4102e90ae44f        3 minutes ago        1.003 GB
node                         4.5.0-nanoserver           c69755c3eaa4        4 minutes ago        1.001 GB
stefanscherer/node-windows   6-nano                     8aaa86fdc12a        3 days ago           999 MB
stefanscherer/node-windows   4-nano                     384c4d4b0cee        3 days ago           995.2 MB
microsoft/nanoserver         latest                     3a703c6e97a2        10 weeks ago         969.8 MB

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

dtzar reacted with thumbs up emoji
All reactions
  • 👍 1 reaction
@tianon

tianon commented Aug 25, 2016 via email

Copy link
Copy Markdown
Contributor
It's worth noting that we (the official images team) don't have a reliable way to build nanoserver images yet, so I'd recommend holding off on this one.
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@Starefossen Starefossen added the do not merge label Aug 25, 2016
@StefanScherer
StefanScherer force-pushed the introduce-nanoserver-dockerfiles branch from ebdf10a to 9ccbeb6 Compare September 29, 2016 07:12
@StefanScherer

StefanScherer commented Sep 29, 2016

Copy link
Copy Markdown
Author

Updated this PR to latest versions Node.js 4.6 and 6.7. Introduced SHELL instruction, simplified downloading zip file.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@StefanScherer StefanScherer mentioned this pull request Sep 29, 2016
Proposal: Introduce Dockerfiles for windowsservercore #222
Closed
@chorrell chorrell mentioned this pull request Sep 29, 2016
Improve test #239
Merged
@chorrell

chorrell commented Sep 29, 2016 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor

The recent failure looks like an issue with the test. The test-build.sh script assumed there would be a dockerfile here: 4.6/windows/Dockerfile.

I opened #239 to improve the test script and once that lands you should probably rebase and try again.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@chorrell

chorrell commented Sep 29, 2016

Copy link
Copy Markdown
Contributor

Although, ^ being said, I don't think the test build will ultimately run successfully since I don't think Travis-Ci has the necessary Windows/Docker support.

I see you have a test-build.ps1 test build script. So I guess ultimately we want a separate approach for testing the Windows image and will need to update test-build.sh.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

chorrell

This comment was marked as off-topic.

Sign in to view

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@StefanScherer
StefanScherer force-pushed the introduce-nanoserver-dockerfiles branch from 9ccbeb6 to 51f0384 Compare September 29, 2016 22:02
@StefanScherer StefanScherer mentioned this pull request Nov 4, 2016
Windows Container: fs.realpathSync() is broken on shared volumes nodejs/node#8897
Closed
@StefanScherer
StefanScherer force-pushed the introduce-nanoserver-dockerfiles branch 2 times, most recently from 70603f6 to 492bdab Compare December 7, 2016 10:34
@StefanScherer

StefanScherer commented Dec 7, 2016

Copy link
Copy Markdown
Author

Updated to Node.js 4.7.0, 6.9.2 and 7.2.1 :-)
These Dockerfiles are built in my AppVeyor proof-of-concept https://ci.appveyor.com/project/StefanScherer/dockerfiles-windows/build/1.0.21

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@StefanScherer
Introduce Dockerfiles for nanoserver
e9444cf
Signed-off-by: Stefan Scherer <[email protected]>
@StefanScherer
StefanScherer force-pushed the introduce-nanoserver-dockerfiles branch from 492bdab to e9444cf Compare March 22, 2017 06:39
@StefanScherer StefanScherer mentioned this pull request Mar 22, 2017
Introduce windows images #362
Closed
@StefanScherer

StefanScherer commented Mar 22, 2017

Copy link
Copy Markdown
Author

Closing, see #362 for a more up to date PR with appveyor.yml

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@StefanScherer StefanScherer closed this Mar 22, 2017
@StefanScherer
StefanScherer deleted the introduce-nanoserver-dockerfiles branch July 23, 2017 09:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

1 more reviewer
@chorrell chorrell chorrell requested changes
Reviewers whose approvals may not affect merge requirements

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

do not merge

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

4 participants

@StefanScherer @tianon @chorrell @Starefossen
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.