NetCore微服务入门---Docker安裝與設定

0、預先設定

使用Docker容器有兩種模式:       

Hyper-V

WSL

0.1、預先開啟Hyper-V功能

Windoes=>控制面板=>程序=>開啟或關閉Windows功能

 0.2 wsl下載安裝

--也可先安裝Docker Windoes後,打開後查看是否有提示需要安裝WSL

下載地址:旧版 WSL 的手动安装步骤 | Microsoft Learn

1、安裝Docker

 下載地址:Home - Docker

 1.1、Hyper-V下參數設定:

Hyper-V下設定沒有勾選WSL服務

 1.2、WSl下的設定,設定把鏡像文件遷出C盤:

默认是放在C盘的,可以看下这个文件夹,我是C盘本身就100G,这个文件夹几十G,C:\Users\***\AppData\Local\Docker

C:\Users\***>wsl --list --verbose
  NAME                   STATE           VERSION
* docker-desktop         Running         2
  docker-desktop-data    Running         2
  --導出
C:\Users\***>wsl --export docker-desktop D:\DockerDesktop\data\docker-desktop.tar
C:\Users\***>wsl --export docker-desktop-data D:\DockerDesktop\docker-desktop-data 

--關閉

C:\Users\***>wsl --shutdown

--註銷docker-desktop

C:\Users\***>wsl --unregister docker-desktop
--注销docker-desktop-data

C:\Users\***>wsl --unregister docker-desktop-data
--導入..

C:\Users\***>wsl --import docker-desktop D:\DockerDesktop\docker-desktop D:\DockerDesktop\data\docker-desktop.tar --version 2

---需要提前创建对应的目录,不然报错找不到指定的路径

---刪除舊的文件“C:\Users\***\AppData\Local\Docker”

---重新啟動Docker Desktop

 2、至此Docker Desktop已經安裝按成

拉取一些必要的Images,進入cmd

docker pull nginx

docker pull redis

docker pull consul

docker pull Ubuntu

2.1、測試 consul

--創建consul容器

docker run --name consulService -d -p 8500:8500 consul

3、 常規命令

詳細可查看:Docker 命令大全 | 菜鸟教程 (runoob.com)

docker pull nginx ---拉取nginx鏡像

docker images ---查看Docker下的鏡像

docker run :创建一个新的容器并运行一个命令,詳細請看3.1

docker ps ---查看Docker下的啟動的容器

docker ps -a ---查看Docker下的全部容器(啟動與為啟動的)

--docker start :启动一个或多个已经被停止的容器

docker start nginx

--docker stop :停止一个运行中的容器

docker stop nginx

--docker restart :重启容器

docker restart nginx

3.1 创建一个新的容器并运行一个命令

docker run :创建一个新的容器并运行一个命令
--OPTIONS说明:

-a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;

-d: 后台运行容器,并返回容器ID;

-i: 以交互模式运行容器,通常与 -t 同时使用;

-P: 随机端口映射,容器内部端口随机映射到主机的端口

-p: 指定端口映射,格式为:主机(宿主)端口:容器端口

-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

--name="nginx-lb": 为容器指定一个名称;

--dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;

--dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;

-h "mars": 指定容器的hostname;

-e username="ritchie": 设置环境变量;

--env-file=[]: 从指定文件读入环境变量;

--cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;

-m :设置容器使用内存最大值;

--net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;

--link=[]: 添加链接到另一个容器;

--expose=[]: 开放一个端口或一组端口;

--volume , -v: 绑定一个卷



实例
使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为mynginx。
docker run --name mynginx -d nginx:latest

使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口。
docker run -P -d nginx:latest

使用镜像 nginx:latest,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,主机的目录 /data 映射到容器的 /data。
docker run -p 80:80 -v /data:/data -d nginx:latest

绑定容器的 8080 端口,并将其映射到本地主机 127.0.0.1 的 80 端口上。
docker run -p 127.0.0.1:80:8080/tcp ubuntu bash

使用镜像nginx:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。
docker run -it nginx:latest /bin/bash

 

--将 本地文件 传输(复制)到容器中
docker cp 文件/文件夹的路径 容器id:容器中存放文件/文件夹的路径
--拷貝文件夾
--例子:
docker cp d:/docker/data/consul 22c80ffea01c:/consul/config
--拷貝文件
--例子:
docker cp d:/docker/data/consul/test.txt 22c80ffea01c:/consul/config

--将容器中的文件 下载到本地
docker cp 容器id:容器中存放文件/文件夹路径  文件/文件夹路径
--拷貝文件夾到本地
例子:
docker cp 22c80ffea01c:/consul/config d:/docker/data/consul 
--拷貝文件到本地
--例子:
docker cp 22c80ffea01c:/consul/config d:/docker/data/consul/test.txt

容器id怎么查询
docker ps
查出目前正在运行的容器信息,CONTAINER ID下对应的容器id,每个运行的容器的id都是唯一的,是镜像在运行时候动态赋予的。

进入正在运行的容器
docker ps#查看正在运行的容器信息
sudo docker exec -it 容器id /bin/bash  


--刪除容器內的文件
進入目錄下進行 rm [文件名].[後綴]
--刪除文件夾
進入目錄下進行 rm -rf [文件名].[後綴]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值