首页 > 其他分享 >docker常用命令

docker常用命令

时间:2022-11-04 16:11:39浏览次数:64  
标签:容器 run -- 常用命令 镜像 docker ID

1、问题描述

docker使用越来越普遍,记录下,以便后续温故而知新;

2、问题说明

2.1 什么是docker?

docker的理解,看过很多,感觉这个是说的是最形象的。

2.2 docker安装

2.2.1 判断是否安装docker

docker version

2.2.2 在线安装docker

1、 查看是否安装的有老版本docker需要删除

sudo yum list installed | grep docker

2、docker在线安装

step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# Step 3: 更新并安装 Docker-CE
sudo yum makecache
sudo yum -y install docker-ce

# Step 4: 开启Docker服务
sudo service docker start

# Step 5: 验证
docker version

3、docker操作及添加到自启动

1、启动docker服务

systemctl start docker

2、关闭docker服务

systemctl stop docker

3、重启docker

systemctl restart docker

4、 docker设置随服务启动而自启动

systemctl enable docker

查看是否增加自启动
systemctl is-enabled docker 

5、查看docker 运行状态

systemctl status docker

-----如果是在运行中 输入命令后 会看到绿色的active

6、 查看docker 版本号信息

docker version

2.3 镜像操作

2.3.1 查看自己服务器中docker 镜像列表

docker images

通过docker pull拉取后,会在这里显示;

2.3.2 搜索镜像

docker search 镜像名

例如:docker search tomcat

2.3.3 拉取镜像

不加tag(版本号) 即拉取docker仓库中 该镜像的最新版本latest 加:tag 则是拉取指定版本

docker pull 镜像名 
docker pull 镜像名:tag

例如:docker pull tomcat

2.3.4 docker镜像官方仓库

地址:https://hub.docker.com/

2.3.5 run镜像,构建容器

docker run tomcat

查看运行镜像/容器:

 docker ps
 
 --查看所有,包含关闭的
 docker ps -a

删除镜像:

#删除一个
docker rmi -f 镜像名/镜像ID

#删除多个 其镜像ID或镜像用用空格隔开即可 
docker rmi -f 镜像名/镜像ID 镜像名/镜像ID 镜像名/镜像ID

保存容器成镜像

 docker save tomcat -o /mytomcat.ta

2.4 docker 容器

容器怎么来的 ?可以通过run 镜像 来构建 自己的容器实例,简单来说,运行镜像(docker run 镜像),就是构建容器实例(下面图参考其他朋友的);

每一个 Docker容器都是独立和安全的应用平台(我们可以理解为,每一个docker容器都相当于在我们的服务器上占用资源然后开辟了属于自己的一个空间(也可以理解为服务器))

查看端口号是否能用:

netstat -untlp

2.4.1 构建容器

docker run --name mytomcat1 -it -d -p 9090:8080 tomcat

启动第二个:
docker run --name mytomcat2 -it -d -p 9091:8080 tomcat

2.4.2 进入容器,非常重要

docker exec -it 容器名/容器ID /bin/bash

简写:docker exec -it 802 bash  --802容器前三位

退出容器:exit

例如:docker exec -it mytomcat1 bash

2.4.3 查看docker容器日志

用于分析问题,非常重要,

docker  logs --tail=要查看末尾多少行  容器名/容器ID

例如:docker logs mytomcat1

docker logs --tail=10 mytomcat1

有个点,阿里云下面的tomcat是最小化的,没有项目,浏览器访问会报404,更改下就好了,进入容器后:

mv webapps webapps2
mv webapps.dist webapps

2.4.4 容器管理

docker start/stop/restart/kill 容器名/容器ID

想给容器重新命名:
docker rename 容器ID/容器名 新容器名

示例:docker start mytomcat1

删除容器,慎用:

docker rm 容器名/容器ID

容器分析

docker inspect mt1

容器文件拷贝 —无论容器是否开启 都可以进行拷贝

#从容器内 拷出
docker cp 容器ID/名称: 容器内路径  容器外路径
#从外部 拷贝文件到容器内
docker  cp 容器外路径 容器ID/名称: 容器内路径

也很重要,假如服务器被重启了,但是docker会自动启动,而容器不会,需要增加参数启动容器时,使用docker run命令时 添加参数 --restart=always 便表示,该容器随docker服务启动而自动启动;

针对已经存在容器,不想删容器,又想让这个容器设置开机自启动,那么我们修改其启动配置即可!

docker  update --restart=always 容器Id 或者 容器名

2.4.5 数据挂载

简单来讲,就是将容器内的数据与外部宿主机文件绑定起来,类似一个双持久化,当容器删除时,宿主机文件数据目录仍在,下次启动容器只要将数据目录指向宿主机数据所在位置即可恢复!

命令:

-v 宿主机文件存储位置:容器内文件位置

-v 宿主机文件存储位置:容器内文件位置 -v 宿主机文件存储位置:容器内文件位置 -v 宿主机文件存储位置:容器内文件位置

示例说明,项目中使用的:

docker run -d  -u root  -p 8080:8080  -v /opt/data/jenkins_home:/var/jenkins_home  -v /var/run/docker.sock:/var/run/docker.sock  jenkinsci/blueocean

-d 以守护线程方式运行。不加该参数,关掉命令行,docker的jenkins就随之停止了。

-u jenkins的Linux启动用户名

-p 端口映射 docker命令所有映射,都是真系统的在前,docker下的在后 例如 -p 80:8080 就是把docker下的8080端口映射到真正系统上的80端口。对外访问使用80端口进行访问。

-v /opt/data/jenkins_home:/var/jenkins_home 映射 jenkins_home到本地/opt/data/jenkins_home目录。例如启动jenkins的初始密码,秘钥库等都从这里面找。

挂载这块还有几个点,需要再想想;


更多信息请关注公众号:「软件老王」,关注不迷路,软件老王和他的IT朋友们,分享一些他们的技术见解和生活故事。

标签:容器,run,--,常用命令,镜像,docker,ID
From: https://www.cnblogs.com/ruanjianlaowang/p/16857930.html

相关文章

  • Linux(Ubuntu、Centos)环境安装部署Docker及Docker-compose
    Centos7安装Docker环境#安装依赖yuminstall-yyum-utilsdevice-mapper-persistent-datalvm2#设置yum源(选择其中一个)yum-config-manager--add-repohttp://downl......
  • admin.net框架docker部署
    前端dockerrun-id-p81:80-v/root/docker/ioms/conf/nginx:/etc/nginx-v/root/docker/ioms/logs/:/var/log/nginx-v/root/docker/ioms/www/:/usr/share/nginx/ht......
  • LINUX开发常用命令
     配置网卡命令:vi/etc/systemd/network/50-static.network查看代码[Match]Name=eth0[Network]Address=192.168.5.9/24Gateway=192.168.5.1......
  • BI系统打包Docker镜像及部署的技术难度和实现
    BI系统打包Docker镜像及部署的技术难度和实现随着容器化技术盛行,Docker在前端领域也有着越来越广泛的应用;传统的前端部署方式需要我们将项目打包生成一系列的静态文件,然后......
  • Docker安装Harbor证书:Error response from daemon: Get "https://xx.xx.xx/v2/": x509
    自建harbor仓库ssl证书过期之后,更换了ssl证书。jenkins流水线无法登录harbor镜像仓库、且无法拉取镜像时报,报错信息如下:Errorresponsefromdaemon:Get"https://xx.......
  • Docker安装Nacos
    创建本地的映射文件mkdir-p/root/nacos/init.d/root/nacos/logstouch/root/nacos/init.d/custom.properties在文件中写入配置management.endpoints.web.expo......
  • dockers
    dockersdockers常用docker命令管理命令dockerps//查看所有正在运行容器dockerstopcontainerId//containerId是容器的IDdockerps-a//查看所有容器$doc......
  • 使用docker-compose部署ELK
    文件目录结构elkdocker-compose.ymlelasticsearch.ymlkibana.ymllogstash.ymllogstash.conffilebeat.ymldata/elasticsearch/logs/password.txtdata/e......
  • arm架构安装Docker
    #查看Linux内核版本uname-r4.18.0-80.7.2.el7.aarch64#或者使用uname-a#下载docker安装脚本curl-fsSLget.docker.com-oget-docker.sh#执行脚本安装docker,......
  • Docker基础和常用命令
    Docker基础和常用命令一,Docker简介1.1,什么是DockerDocker使用Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup,namespace,以及OverlayFS类的Unio......