Blog
首页
文档
收藏
关于
  • 在线转换时间戳 (opens new window)
  • 在线压缩图片 (opens new window)
  • Float-Double转二进制 (opens new window)
  • 文件转Hex字符串 (opens new window)

HiuZing

🍑
首页
文档
收藏
关于
  • 在线转换时间戳 (opens new window)
  • 在线压缩图片 (opens new window)
  • Float-Double转二进制 (opens new window)
  • 文件转Hex字符串 (opens new window)
  • Nginx

  • Docker

    • Docker基础命令
      • 容器
      • 安装
        • 以安装Nginx为例
      • 镜像命令
        • 检索
        • 下载
        • 列表
        • 删除
        • 保存本地
        • 推送社区
      • 容器命令
        • 运行
        • 查看
        • 停止
        • 启动
        • 重启
        • 状态
        • 日志
        • 进入
        • 删除
      • 命令
      • 存储
        • 目录挂载
        • 卷映射
      • 网络
  • Server

  • Linux

  • Windows

  • 运维
  • Docker
HiuZing
2024-08-04
目录

Docker基础命令

# 容器

用镜像启动的应用成为容器

image-20240808145511970

# 安装

开通服务器-安装Docker-

  1. 移除旧版本docker
  2. 安装 最新 docker

# 以安装Nginx为例

下载镜像-启动容器-修改页面-保存镜像-分享社区

# 下载镜像 
docker pull nginx

# 查看镜像
docker images

# 启动容器
docker run nginx
# 或者这样启动
# 访问服务器到达Nginx默认页,端口映射
docker run -d --name mynginx -p 80:80 nginx

# 查看运行的应用
docker ps

# 进入容器
docker exec -it mynginx /bin/bash

# 修改页面
# 进入Nginx文件路径
cd /usr/share/nginx/html
echo "<h1>Hello</h1>" index.html

# 后续使用docker的存储,把内部的文件夹直接映射外部主机位置,直接在主机位置改

# 保存镜像
# 提交
docker commit -m "update" mynginx mynginx:v1.0
# 查看镜像(可以查看已提交的)
docker images

# 保存(将镜像保存成文件)
docker save -o mynginx.tar mynginx:v1.0
# 查看该路径(可以查看已保存的)
ls

# 加载
docker load -i mynginx.tar
# 检查镜像
docker images
# 运行镜像
docker run -d --name app01 -p 80:80 mynginx:v1.0
# 检查是否开启成功
docker ps

# 分享社区
docker login
docker tag mynginx:v1.0 hiu/mynginx:v1.0
docker push hiu/mynginx:v1.0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49

# 镜像命令

# 检索

搜索镜像

docker search 镜像名
1

# 下载

下载镜像

docker pull 镜像名
1

# 列表

查看下载的镜像

docker images
1

# 删除

docker rmi 镜像id
1

# 保存本地

# 提交

把容器提交成镜像

docker commit [OPTIONS] 镜像 [镜像名[:版本号]]
1

参数

-m:提交信息

docker commit -m "update" mynginx mynginx:v1.0
1

# 保存

将镜像保存成文件,方便进行文件传输的方式

docker save [OPTIONS] 文件名 [文件]
1

参数

-o: 保存的文件

docker save -o mynginx.tar mynginx:v1.0
1

# 加载

加载文件

docker load [OPTIONS]
1

参数

-i: 压缩包名字

docker load -i mynginx.tar
1

# 推送社区

# 登录

docker login
1

# 命名

镜像改名

docker tag 镜像名[:版本号] 用户名(镜像名)[:版本号]
1
docker tag mynginx:v1.0 hiu/mynginx:v1.0

# 将1.0设置为最新的版本
docker tag mynginx:v1.0 hiu/mynginx:latest
1
2
3
4

# 推送

docker push 镜像名[:版本号]
1
docker push hiu/mynginx:v1.0
# 最新的版本
docker push hiu/mynginx:latest
1
2
3

# 容器命令

# 运行

docker run [OPTIONS] IMAGE [COMMAND]
1

参数

  1. -d:后台启动

  2. --name:容器名

  3. -p:端口映射

    -p 80:80主机80对应容器80

    容器端口可以重复,主机端口不可以重复;同一台机器同一个端口只能开一个

    docker run -d --name mynginx -p 80:80 nginx
    
    1
  4. -v:目录挂载

    允许在自己的机器外面开辟一个目录,指向容器的目录;在外面目录修改直接影响内部目录的内容

    # docker run -d -p 外部端口:内部端口 -v 外部目录:内部目录 --name 容器名 镜像
    docker run -d -p 80:80 -v /app/nghtml:/usr/share/nginx/html --name app01 nginx
    
    1
    2

# 查看

参数

  1. -a:所有容器信息(包括停止的)
  2. -q:所有容器id
# 运行中 
docker ps
1
2

# 停止

docker stop
1

# 启动

docker start 容器id(可以只写三位)/容器名
1

# 重启

docker restart 容器名
1

# 状态

# 查看应用CPU、内存、网络IO等占用情况
docker stats
1
2

# 日志

# 进行排查
docker logs
1
2

# 进入

docker exec
1

参数

-it:交互模式

docker exec -it 容器名 哪种方式
1
docker exec -it app01 bash
1

# 删除

# 停止了才能删除
docker rm 容器id

# 强制删除
docker rm -f 容器id

# 批量删除所有容器
docker rm $(docker ps -aq)
1
2
3
4
5
6
7
8

# 命令

::: details
#查看运行中的容器
docker ps
#查看所有容器
docker ps -a
#搜索镜像
docker search nginx
#下载镜像
docker pull nginx
#下载指定版本镜像
docker pull nginx:1.26.0
#查看所有镜像
docker images
#删除指定id的镜像
docker rmi e784f4560448


#运行一个新容器
docker run nginx
#停止容器
docker stop keen_blackwell
#启动容器
docker start 592
#重启容器
docker restart 592
#查看容器资源占用情况
docker stats 592
#查看容器日志
docker logs 592
#删除指定容器
docker rm 592
#强制删除指定容器
docker rm -f 592
# 后台启动容器
docker run -d --name mynginx nginx
# 后台启动并暴露端口
docker run -d --name mynginx -p 80:80 nginx
# 进入容器内部
docker exec -it mynginx /bin/bash

# 提交容器变化打成一个新的镜像
docker commit -m "update index.html" mynginx mynginx:v1.0
# 保存镜像为指定文件
docker save -o mynginx.tar mynginx:v1.0
# 删除多个镜像
docker rmi bde7d154a67f 94543a6c1aef e784f4560448
# 加载镜像
docker load -i mynginx.tar 


# 登录 docker hub
docker login
# 重新给镜像打标签
docker tag mynginx:v1.0 leifengyang/mynginx:v1.0
# 推送镜像
docker push leifengyang/mynginx:v1.0
:::
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57

# 存储

容器一启动,是启动一个独立的文件系统;容易一销毁,文件系统内容也销毁;

# 目录挂载

允许在自己的机器外面开辟一个目录,指向容器的目录;在外面目录修改直接影响内部目录的内容

docker run -d -p 80:80 -v /app/nghtml:/usr/share/nginx/html --name app01 nginx

cd /app/nghtml
echo 2222 > index.html
1
2
3
4

# 卷映射

用于更新容器中的配置文件

docker run -d -p 99:80 -v /app/nghtml:/usr/share/nginx/html -v ngconf:/etc/nginx --name app03 nginx
1

docker配置文件统一路径/var/lib/docker/volumes/<volumes-name>下的_data

# 列出卷
docker volumes ls

# 创建卷
docker volumes xx

# 查看卷详情
docker volumes inspect ngconf
1
2
3
4
5
6
7
8

# 网络

# 获取容器的信息
docker inspect app1
# http://172.17.0.2
docker inspect app2
# http://172.17.0.3

# 在app1容器查看app2的内容
curl http://172.17.0.3:80
1
2
3
4
5
6
7
8
上次更新: 2024/08/14, 04:14:33
Nginx负载均衡
远程连接

← Nginx负载均衡 远程连接→

最近更新
01
React Native 使用SVG
08-13
02
算数逻辑单元
07-30
03
奇偶校验码
07-30
更多文章>
Theme by Vdoing | Copyright © 2021-2024 WeiXiaojing | 友情链接
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式