Skip to content

Update DD walkthrough #17137

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 5 additions & 83 deletions get-started/run-your-own-container.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,89 +39,11 @@ If you don't have git, download the source and extract it.
</div>
</div>

## Step 2: Create a Dockerfile in your project folder
## Step 2: Explore the Dockerfile

To run your code in a container, the most fundamental thing you need is a Dockerfile. A Dockerfile describes what goes into a container. To add a Dockerfile, create a text file called `Dockerfile` with no file extension in the root directory of your project. You can use the following commands to create a Dockerfile.
To run your code in a container, the most fundamental thing you need is a Dockerfile. A Dockerfile describes what goes into a container. Open the sample application in your IDE and then open the `Dockerfile` to explore its contents. Note that this project already has a Dockerfile, but for your own projects you need to create a Dockerfile. A Dockerfile is simply a text file named `Dockerfile` with no file extension.

<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" data-target="#mac-linux">Mac / Linux</a></li>
<li><a data-toggle="tab" data-target="#windows">Windows</a></li>
</ul>
<div class="tab-content">
<div id="mac-linux" class="tab-pane fade in active" markdown="1">

### Mac / Linux

In the terminal, run the following commands listed below.

Change directory to the `welcome-to-docker` directory. Replace `/path/to/welcome-to-docker` with the path to your `welcome-to-docker` directory.
```console
$ cd /path/to/welcome-to-docker
```
Create an empty file named `Dockerfile`.
```console
$ touch Dockerfile
```

<hr>
</div>
<div id="windows" class="tab-pane fade" markdown="1">

### Windows

In the Windows Command Prompt, run the following commands listed below.

Change directory to the `welcome-to-docker` directory. Replace `\path\to\welcome-to-docker` with the path to your `welcome-to-docker` directory.

```console
$ cd \path\to\welcome-to-docker
```
Create an empty file named `Dockerfile`.
```console
$ type nul > Dockerfile
```

<hr>
</div>
</div>

## Step 3: Add instructions to your Dockerfile

Using a text editor or code editor, add the following contents to the Dockerfile:

```dockerfile
# syntax=docker/dockerfile:1

# Start your image with a node base image
FROM node:18-alpine

# Create an application directory
RUN mkdir -p /app

# Set the /app directory as the working directory for any command that follows
WORKDIR /app

# Copy the local app package and package-lock.json file to the container
COPY package*.json ./

# Copy local directories to the working directory of our docker image (/app)
COPY ./src ./src
COPY ./public ./public

# Install node packages, install serve, build the app, and remove dependencies at the end
RUN npm install \
&& npm install -g serve \
&& npm run build \
&& rm -fr node_modules

# Specify that the application in the container listens on port 3000
EXPOSE 3000

# Start the app using serve command
CMD [ "serve", "-s", "build" ]
```

## Step 4: Build your first image
## Step 3: Build your first image

An image is like a static version of a container. You always need an image to run a container. Once you have a Dockerfile in your repository, run the following `docker build` command in the project folder to create an image.

Expand All @@ -131,13 +53,13 @@ $ docker build -t welcome-to-docker .

Building the image may take some time. After your image is built, you can view your image in the **Images** tab in Docker Desktop.

## Step 5: Run your container
## Step 4: Run your container

To run your image as a container, go to the **Images** tab, and then select **Run** in the **Actions** column of your image. When the **Optional settings** appear, specify the **Host port** number `8089` and then select **Run**.

![Running an image in Docker Desktop](images/getting-started-run-image.gif){:width="500px"}

## Step 6: Verify that your container is running
## Step 5: Verify that your container is running

You can use Docker Desktop to view and access running containers. Go to the **Containers** tab to view your container and select the link in the **Port(s)** column or go to [http://localhost:8089](http://localhost:8089){:target="_blank" rel="noopener" class="_"} to verify that the application is running.

Expand Down