docker高级教程_docker到底怎么用

docker高级教程_docker到底怎么用一、基于Linux安装Docker1、下载关于Docker的依赖环境yum-yinstallyum-utilsdevice-mapper-persistent-datalvm22、设置镜像下载Docker的镜像源yum-config-manager–add-repohttp://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo3、安装Dockeryummakecachefastyum-yinstall

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

一、基于Linux安装Docker

1、下载关于Docker的依赖环境

yum -y install yum-utils device-mapper-persistent-data lvm2

2、设置镜像下载Docker的镜像源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、安装Docker

yum makecache fast
yum -y install docker-ce

4、启动Docker,并设置为开机自动启动,测试

# 启动Docker服务
systemctl start docker
# 设置开机自动启动
systemctl enable docker
# 测试
docker run hello-world

二、Docker启动与停止

1、启动docker

sudo service docker start

2、停止docker

sudo service docker stop

3、重启docker

sudo service docker restart

三、镜像操作

1、拉取镜像到本地

docker pull 镜像名称

在hub.docker.com(官方docker镜像仓库)右侧有拉取镜像的地址

2、查看全部本地镜像

docker images

3、删除本地镜像

docker image rm 镜像id
或
docker rmi 镜像id

4、修改镜像名称

docker tag 镜像id 新镜像名称:版本

四、容器操作

1、运行容器

简单操作

docker run 镜像的标识|镜像名称[tag]

常用的参数

docker run -d -p  宿主机端口:容器端口 --name 容器名称 镜像的标识|镜像名称[tag]
# -d: 代表后台运行容器
# -p: 宿主机端口:容器端口: 为了映射当前Linux的端口和容器的端口
# --name 容器名称: 指定容器的名称

2、查看正在运行的容器

docker ps [OPTIONS]
# OPTIONS说明:
# -a: 代表查看全部的容器,包括没有运行
# -q: 只查看容器的标识
# -f: 根据条件过滤显示的内容
# --format: 指定返回值的模板文件
# -l: 显示最近创建的容器
# -n: 列出最近创建的n个容器
# --no-trunc: 不截断输出
# -s: 显示总的文件大小

3、容器自启动

创建容器时

docker run -d --restart=always --name 设置容器名 使用的镜像
(上面命令  --name后面两个参数根据实际情况自行修改)
 
# Docker 容器的重启策略如下:
 --restart具体参数值详细信息:
       no        // 默认策略,容器退出时不重启容器;
       on-failure    // 在容器非正常退出时(退出状态非0)才重新启动容器;
       on-failure:3    // 在容器非正常退出时重启容器,最多重启3次;
       always      // 无论退出状态是如何,都重启容器;
       unless-stopped  // 在容器退出时总是重启容器,但是不考虑在 Docker 守护进程启动时就已经停止了的容器。

修改已有容器

docker update --restart=always 容器ID(或者容器名)
(容器ID或者容器名根据实际情况修改)

4、查看容器的日志

docker logs -f 容器id
# -f: 可以滚动查看日志的最后几行

5、进入到容器内部

docker exec -it 容器id bash

6、启动容器

docker start 容器id

7、停止容器

# 停止指定的容器
docker stop 容器id
# 停止全部容器
docker stop $(docker ps -qa)

8、删除容器

# 删除指定容器
docker rm 镜像id
# 删除全部容器
docker rm $(docker ps -qa)

五、创建容器实操

以flame导航主页为例

1、下载(拉取)flame镜像文件

在https://hub.docker.com搜索框中搜索flame

image-20220421224015669

可以看见右侧有docker pull command拉取镜像的命令,以windows为例,打开cmd输入以上命令即可下载docker镜像

image-20220423105702750

2、配置docker新建容器

然后依旧在控制台输入下列命令,它是组携带了各种参数的命令

docker run -dit -p 301:5005 -v D:\Docker\flame\data:/app/data -e PASSWORD=admin --restart=always --name flame pawelmalak/flame:latest

image-20220423112806517

在上面代码中各部分的意义:
docker run 是指固定创建容器语句
-dit 其中 d是指-d 后台运行容器,并返回容器ID,i是指 以交互模式运行容器,通常与 -t 同时使用,t是指-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-p 301:5005 是指容器端口5005映射到301
-v D:\Docker\flame\data:/app/data 是指将容器路径/app/data映射到本机路径D:\Docker\flame\data
-e PASSWORD=admin 是指指定一个参数,具体参数要看镜像的描述
-restart=always 是指容器自动启动,或意外弹出后自动启动
–name flame 是指为容器命名
pawelmalak/flame:latest 镜像名称,docker images可以查看全部

代码运行成功后打开浏览器输入:http://localhost:301,有页面显示则表示安装成功了。

image-20220423113232532

以上是docker的基本使用命令以及实际容器搭建。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181606.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker启动mysql命令_docker部署java环境

    docker启动mysql命令_docker部署java环境Docker启动Mysql一、单机版Mysql1、拉取官方镜像,镜像地址:/mysql/”>https://hub.docker.com//mysql/2、拉取镜像:dockerpullmysql3、准备Mysql数据存放目录,我这里是:/home/ljaer/mysql4、执行指令启动Mysqldocker@default:~$dockerrun–namemysql-v/home/ljaer/mysql:/var/lib/mysql-p3306:3

    2022年10月6日
    1
  • 如何保证docker2375端口的安全

    如何保证docker2375端口的安全情景再现:之前有很多朋友提过,当使用docker-maven-plugin打包SpringBoot应用的Docker镜像时,服务器需要开放2375端口。由于开放了端口没有做任何安全保护,会引起安全漏洞,被人入侵、挖矿、CPU飙升这些情况都有发生,今天我们来聊聊如何解决这个问题。问题产生的原因首先我们要明白问题产生的原因,才能更好地解决问题!Docker为了实现集群管理,提供了远程管理的端口。DockerDaemon作为守护进程运行在后台,可以执行发送到管理端口上的Docker命令。当我们修改do

    2022年6月13日
    77
  • jenkinsfile docker_docker从0创建镜像

    jenkinsfile docker_docker从0创建镜像前言之前我们用docker手动安装了jenkins环境,在jenkins中又安装了python3环境和各种安装包,如果我们想要在其他3台机器上安装,又是重复操作,重复劳动,那会显得很low,这里可以

    2022年7月31日
    6
  • docker修改mysql密码_mysql重新设置密码

    docker修改mysql密码_mysql重新设置密码进入容器dockerexec-it{容器ID}/bin/bash调整MySQL配置文件,设置跳过权限控制:echo”skip-grant-tables”>>/etc/mysql/conf.d/docker.cnf警告:这就意味着任何用户都能登录进来,并进行任何操作,相当不安全。退出容器:exit重启容器:dockerrestart{容器ID}再次进入容器:dockerexec-it{容器ID}/bin/bash登录mysql(无需密码):my.

    2022年10月15日
    3
  • Docker暴露2375端口,引起安全漏洞

    Docker暴露2375端口,引起安全漏洞作者信息:廖煜,电子科技大学计算机和金融学双硕士,负责Ghostcloud的产品运营。曾任EMC西南区架构师。国内顶级Docker技术专家,Docker开源项目贡献者。拥有丰富的虚拟化、云计算和企业级软件经验。前几天有小伙伴发现Docker暴露出2375端口,引起了安全漏洞。我现在给大家介绍整个事情的来龙去脉,并告诉小伙伴们,怎么修复这个漏洞。为了实现集群管理,Docker提供了远程管理接…

    2022年6月5日
    51
  • docker(1)下载安装for mac[通俗易懂]

    docker(1)下载安装for mac[通俗易懂]前言Docker提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D

    2022年7月30日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号