Windows10 安装使用 Docker
Windows10 安装使用 Docker
下载安装 Docker Desktop
https://docs.docker.com/docker-for-windows/install/

点击运行 Docker Desktop。
如果出现如下提示

下载安装 Linux 内核更新包
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
或者
https://docs.microsoft.com/zh-cn/windows/wsl/install-win10#step-4---download-the-linux-kernel-update-package
PowerShell 执行
wsl --set-default-version 2
点击Restart
PowerShell 执行
docker version

打开 vscode 安装 Docker 插件
创建编写 Dockerfile
FROM dokken/ubuntu-18.04
RUN apt-get update \
&& apt-get install net-tools -y \
&& apt-get install git -y \
&& apt-get install npm -y \
&& npm install n -g \
&& n stable \
&& apt-get install cmake -y \
&& apt-get install gdb -y \
&& apt-get install vim -y
CMD [ "/bin/bash"]
以 \ 换行 && 符号连接多条命令
创建Docker镜像
Dockerfile 目录下执行(不能放在磁盘根目录下执行)
docker build -t <image_name>:<tag_name> -f <dockerfile_path> .
示例执行 docker build -t test:v1.0 .
查看已创建的镜像
docker images

启动镜像
docker run -d -it --name <nick-name> <image_name>:<tag_name> /bin/bash
示例执行 docker run -d -it test:v1.0 /bin/bash
查看容器
docker ps -a

附加进入容器
docker exec -it <CONTAINER_ID> /bin/bash
上面容器的ID为 81df71ab0ccc
示例执行 docker exec -it 81df71ab0ccc /bin/bash
输入 exit 退出容器
提交当前的容器操作到指定的镜像分支
docker commit -m "<logs>" -a "<author>" <CONTAINER_ID> <image_name>:<tag_name>
示例执行 docker commit -m "update" -a "gaobowen" 81df71ab0ccc test:v1.0
停止容器
docker stop <CONTAINER_ID>
启动容器
docker start <CONTAINER_ID>
删除容器
docker rm <CONTAINER_ID>
删除镜像
docker rmi <IMAGE_ID>
导出 镜像 生成 本地文件
docker save <image_id> > <file_name>.tar
导入 本地文件 生成 镜像
docker load < <file_name>.tar
目录映射
docker run -d -it -v <local_dir>:<docker_dir> <image_name>:<tag_name> /bin/bash
端口映射
docker run -d -it -p <local_port>:<docker_port> <image_name>:<tag_name> /bin/bash
同时映射 端口 和 目录
docker run -d -it -p <local_port>:<docker_port> -v <local_dir>:<docker_dir> <image_name>:<tag_name> /bin/bash
批量端口映射
以映射7000-8000端口为例
Dockerfile EXPOSE命令:
EXPOSE 7000-8000
Docker run命令:
docker run --expose=7000-8000 或者 docker run -p 7000-8000:7000-8000
以我本机为例,在“d:/blog/docker/testdir”下创建
package.json
{
"name": "testdir",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "npm i express && node index.js"
},
"author": "",
"license": "MIT"
}
index.js
const express = require('express');
const app = express();
let port = 5000;
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.get('/', (req, res) => res.send(`docker listening on port ${port} !`));
app.listen(port, () => console.log(`docker listening on port ${port} !`));
示例执行A
docker run -d -it -v d:/blog/docker/testdir:/code -p 4000:5000 test:v1.0 /bin/bash
docker ps -a
docker exec -it 0313d3ac65ed /bin/bash
查看docker容器中的“/code”目录,本地文件出现在docker中

"/code" 目录下执行 npm run test, 本机浏览器访问 localhost:4000 发现本机的4000端口映射到docker的5000端口上了

VSCode 管理 docker 容器
VSCode 安装 Remote Development 扩展
Remote Explorer -> Containers 查看控制容器

附加进入容器

File -> OpenFolder 打开容器中的指定目录

新增 本地 到 Docker 的端口映射

Windows10 安装使用 Docker的更多相关文章
- Windows10下的docker安装与入门 (二)使用docker引擎在容器中运行镜像
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...
- windows安装使用docker
doker就是一个容器,如果想要在windows安装还必须要用另外一个工具docker-toolbox.下载地址:https://mirrors.aliyun.com/docker-toolbox/w ...
- Docker系列教程01-Centos7安装新版Docker教程(10步)
最近一直忙于开发,没有时间好好总结一下docker的知识.其实现在docker的教程已经很多很多了,但是很多系统的教程都是基于Ubuntu系统,因为官方推荐使用Ubuntu系统啊,原因在于Ubuntu ...
- Mac OS X 下安装使用 Docker (2017年7月)
两年前的一篇 Mac OS X 下安装使用 Docker 安装时还是用的 boot2docker, 如今进化到了在 Mac OS X 下用 Docker Toolbox, 而且命令也由 boot2do ...
- windows10安装JIRA
windows10安装MySQL数据库 一.问题现象: cmd执行“mysql”命令,提示:ERROR 2003 (HY000): Can't connect to MySQL server on ' ...
- Docker构建YApi镜像, Docker安装YApi, Docker部署YApi
概述 YApi 是高效.易用.功能强大的 api 管理平台,旨在为开发.产品.测试人员提供更优雅的接口管理服务.可以帮助开发者轻松创建.发布.维护 API,YApi 还为用户提供了优秀的交互体验,开发 ...
- SpringBoot Docker Mysql安装,Docker安装Mysql
SpringBoot Docker Mysql安装,Docker安装Mysql ================================ ©Copyright 蕃薯耀 2018年4月8日 ht ...
- Centos6.5 安装配置docker
宿主机:win7 64位 vagrant封装环境运行在VirtualBox 虚拟机上CentOS6.5,这是做测试时的一个环境,顺便错用安装docker玩玩. centos6.5可以直接安装d ...
- 在Mac和win7上分别安装了docker后,发现原来的vagrant都启动不了了
在Mac和win7上分别安装了docker后,发现原来的vagrant都启动不了了 liugx@liugx vagrant$ vagrant up /opt/vagrant/embedded/gems ...
- Windows10安装MariaDB
截至写这篇博客为止,MariaDB官方的稳定版本为,详情访问官方地址:https://downloads.mariadb.org/ 安装之前先简单说一下MariaDB: MariaDB ...
随机推荐
- 《最新出炉》系列初窥篇-Python+Playwright自动化测试-61 - 隐藏元素定位与操作
1.简介 对于前端隐藏元素,一直是自动化定位元素的隐形杀手,让人防不胜防.脚本跑到隐藏元素时位置时报各种各样的错误,可是这种隐藏的下拉菜单又没有办法避免,所以非常头痛,这一篇只为交流隐藏元素自动化定位 ...
- 【转载】ubuntu用户/linux用户登录后没有自动加载.bashrc
版权声明:本文为CSDN博主「安安爸Chris」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/mimiduc ...
- Linux下文件及文件夹权限(学习笔记版)
本文遵循CC 4.0 BY-SA版权协议 注意:本文为学习笔记版,只记录个人觉得重要的部分,内容较为片面. Linux 下文件及文件夹的权限可以表示为rwx这三个字符,r代表read,w代表write ...
- 祝贺小鹏汽车Gallardot同学成为Apache DolphinScheduler Committer!
社区迎来新committer!这次是来自小鹏汽车的Gallardot,看看他与Apache DolphinScheduler社区的故事吧. 对话社区 Q1:您为Apache DolphinSchedu ...
- 3.2.0 终极预告!云原生支持新增 Spark on k8S 支持
视频贡献者 | 王维饶 视频制作者 | 聂同学 编辑整理 | Debra Chen Apache DolphinScheduler 3.2.0 版本将发布,为了让大家提前了解到此版本更新的主要内容,我 ...
- 系统IO常用函数接口
本文整理归纳了几种常用的系统IO的函数借口,以供读者查阅使用 目录 系统IO与标准IO的区别 打开文件:open 关闭文件:close 文件读取:read 文件写入:write 位置偏移:lseek ...
- Linux系统中目录和文件夹是一个东西吗
目录和文件夹的区别 在阐述Linux系统的目录前,我们先来回忆一下现实中的目录和文件夹是什么: 在现实中,文件夹(封套)可以用来保存几个文件(或其他项目).而目录则可以用来维护项目的索引,这样 ...
- 颗粒流 + Janssen 定律 + Bagnold 数
对于 \(n\) 个球,易得有 \[\begin{array}{c} \displaystyle\frac\pi2>\theta_i>-\frac\pi2,\theta_1>\cdo ...
- 关于如何解决IDEA中同一个src下多个类中之一运行时自动报错其他类中的问题导致想要运行的类无法正常运行的问题的解决思路
关于如何解决IDEA中同一个src下多个类中之一运行时自动报错其他类中的问题导致想要运行的类无法正常运行的问题的解决思路 WrongFirst: 我准备了一个正常类BG和一个有错误的类HelloWor ...
- CentOS ssh版本升级
1.升级openssl yum install perl wget https://goodrain-delivery.oss-cn-hangzhou.aliyuncs.com/fuzhoushuch ...