2024年最完整的Docker v19(1),最佳实践React性能优化

本文介绍了如何使用Docker进行容器管理,包括查看容器信息、镜像操作、上传镜像到Docker Hub,以及在Ubuntu和Centos7上的Docker安装步骤。此外,还讲解了Docker的镜像、容器的创建和管理,如启动、停止、删除以及端口映射。最后,提到了Dockerfile的使用和Docker守护进程的配置,以及React性能优化的相关知识点。
摘要由CSDN通过智能技术生成

查看指定ID的容器信息

$ docker inspect

查看有所有镜像

$ docker images

上传镜像到Docker Hub

先去https://hub.docker.com/官网申请一个docker hub 帐号

$ docker login # 登录Docker Hub

$ docker images #查看本地镜像

$ docker tag <镜像名> <用户名/镜像名> #将镜像转让我的账号下

$ docker push <用户名>/<镜像名>

安装Docker


ubuntu

第一步、检查是否支持Docker

$ uname -a

#检查内核版本,必须高于3.10

$ ls -l /sys/class/misc/device-mapper

#检查存储驱动

第二步、安装docker

$ wget -qO- https://get.docker.com/ | sh

Centos7

sudo yum remove docker \

docker-client \

docker-client-latest \

docker-common \

docker-latest \

docker-latest-logrotate \

docker-logrotate \

docker-engine

删除所有的Docker

sudo yum install -y yum-utils \

device-mapper-persistent-data \

lvm2

sudo yum-config-manager \

–add-repo \

https://download.docker.com/linux/centos/docker-ce.repo

使用 Docker 仓库进行安装

sudo yum install -y docker-ce docker-ce-cli containerd.io

如果提示您接受 GPG 密钥,请选是。

配置国内的镜像源

mkdir -p /etc/docker/

echo ‘{“registry-mirrors”:[“http://hub-mirror.c.163.com”,“https://registry.docker-cn.com”]}’ > /etc/docker/daemon.json

systemctl daemon-reload && systemctl restart docker

容器的基本操作


普通容器

启动容器

$ docker run [<用户名>/]<镜像名>[:tag] [命令]

在启动的容器中安装Ping

docker run <用户名>/<镜像名> apt-get install -y ping

启动交会容器

$ docker run [–name=<名称>] -i -t <镜像全名> /bin/bash

-i 表示一直保持输入

-t 表示打开tty终端

–name 自定义名称

查看容器

$ docker ps [-a][-l]

-a 查看所有的容器

-l 查看最新的容器

查看指定ID的容器信息

$ docker inspect

启动/停止容器

$ docker [-i] start/stop <容器>

-i表示持续输入

删除容器

$ docker rm <容器>

守护式容器

特点

  • 可以长期运行

  • 没有交互会话

  • 非常适合运行应用服务

命令

方法一

$ docker run -i -t <镜像> /bin/bash

ctrl+p ctrl+q 退出bash,但没关闭容器

$ docker attach <正在运行容器>

重新进入正在运行的容器

方法二

$ docker run -d <镜像> <命令>

-d 后台守护

查看容器日志

$ docker logs [-f][-t][–tail=n] 容器名

-f 持续输出日志

-t 日志加上时间戳

–tail 返回最后的多少行

查看运行中的容器的进程

$ docker top <容器>

在运行的容器中启动新的进程

$ docker exec [-d][-i][-t] <容器名> [命令]

-d 后台运行

-i 交会运行

-t 打开终端

停止容器

$ docker kill/stop <容器名>

kill 直接停止

stop 等待进程结束后停止

设置端口映射

$ docker run [-P][-p | :] …

-P 映射容器中所有的端口

-p 指定映射容器中某几个端口

eg:

$ docker run -P -i -t ubuntu /bin/bash # 映射所有的端口

$ docker run -p 80 -i -t ubuntu /bin/bash # 映射80端口

$ docker run -p 8080:80 -i -t ubuntu /bin/bash # 将内部的80映射为8080

$ docker run -p 127.0.0.1:8080:80 -i -t ubuntu /bin/bash # 将内部的80端口映射为127.0.0.1:8080

注意:如果使用5、6行的方法进行映射,外部端口是随机分配的

管理镜像


概念

  • TAG:标签

  • 默认:latest

  • 这里多少为版本

  • eg:docker pull node:12.1.1 下载nodejs12.1.1版本

基本操作

显示所有的镜像

$ docker images [-q][-a] [仓库]

-q 只看id

-a 查看所有

查看镜像的详细

$ docker inspace <镜像名>

删除镜像

$ docker rmi [-f] <镜像名>

-f 强制删除

查找镜像

方法1:镜像dockerhub上查找

方法2:

$ docker search [–automated][-no-trunc][-s ] <镜像名>

–automated 只显示自动化选项

–no-trunc 不分页显示

-s 显示的最低num的stat镜像

下载镜像

$ docker pull [-a] <镜像名>

-a 下载匹配的所有镜像

标记镜像到某个仓库

$ docker tag IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]

上传镜像到DockerHub

$ docker images #查看本地镜像

$ docker tag <镜像名> <用户名/镜像名> #将镜像转让我的账号下

$ docker push <用户名/镜像名:Tag> #上传镜像

打包镜像


打包镜像有两种方法,推荐使用Dockerfie方法

使用commit打包

将部署好的容器进行打包。

$ docker commit [-a][-m][-p] <容器> <用户名/镜像名:版本>

-a “” 镜像作者

-m “” 打包备注

-p 不停止镜像打包

使用Dockerfile文件打包

第一步:创建Dockerfile文件

#Dockerfile

FORM <基础镜像:Tag>

MAINTAINER <用户名> “联系方式” #新版本推荐使用 LABEL maintainer=value

RUN <linux命令>

EXPOSE <端口号>

说明:

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值