docker里面- -name命令作用是什么?



在动态的、大规模的分布式集群上,管理和分发 密码证书 等敏感信息是极其重要的工作。传统的密钥分发方式(如密钥放入镜像中,设置环境变量,volume 动态挂载等)都存在着潜在的巨大的安全风险。

Docker 目前已经提供了 secrets 管理功能,用户可以在 Swarm 集群中安全地管理密码、密钥证书等敏感数据,并允许在多个 Docker 容器实例之间共享访问指定的敏感数据。

我们可以用 docker secret 命令来管理敏感信息。接下来我们在上面章节中创建好的 Swarm 集群中介绍该命令的使用。

# 从文件或 STDIN 创建一个秘密作为内容 # 显示有关一个或多个秘密的详细信息

  • 步骤三 创建mysql服务

通过以上方法,我们没有像以前通过设置环境变量来设置 MySQL 密码, 而是采用 docker secret 来设置密码,防范了密码泄露的风险。

在动态的、大规模的分布式集群上,管理和分发配置文件也是很重要的工作。传统的配置文件分发方式(如配置文件放入镜像中,设置环境变量,volume 动态挂载等)都降低了镜像的通用性。

在 Docker 17.06 以上版本中,Docker 新增了 docker config 子命令来管理集群中的配置信息,以后你无需将配置文件放入镜像或挂载到容器中就可实现对服务的配置。

  • 步骤三 创建redis服务

经过测试,redis 可以正常使用。

以前我们通过监听主机目录来配置 Redis,就需要在集群的每个节点放置该文件,如果采用 docker config 来管理服务的配置信息,我们只需在集群中的管理节点创建 config,当部署服务时,集群会自动的将配置文件分发到运行服务的各个节点中,大大降低了配置信息的管理和分发难度。


我已经看到了docker docs 和,但是从那儿得到的并不多。

如果您多次运行docker-compose,它将使用项目名称将一个目录的容器,网络和卷与另一个目录分开。 Compose不会保留任何文件系统状态或运行后台守护程序,因此容器上的元数据是跟踪此情况的唯一方法。

down销毁,依此类推。

如果要在同一目录中运行同一Compose堆栈的多个副本,则需要docker-compose -p选项。否则,目录名称将用作默认项目名称,并且它们会相互冲突。这可能就是Visual Studio在考虑的问题。

ls输出,您将看到对象名称project-a_db_1中包含的名称。如果使用这些命令的详细inspect形式,则会看到一些与Compose相关的标签,而这些正是Compose实际需要的。

1、下面运行名为helloworld的镜像,先把hello-world镜像拉取到本地,命令如下:

这个拉取的命令,后面再详细说明。

接下来运行hello-world镜像,命令如下:

出现如下界面说明运行成功了

二、接下来是查看本地有哪些镜像的的命令

现在就当只有hello-world镜像其他先不用管。

TAG:镜像的标签,这是用于查看镜像的版本。

CREATED:镜像的创建时间,看看就行。

SIZE:镜像的大小,看看就行。

2、这个命令还没完,后面还可以加参数-a,-a表示所有

这个命令表示列出本地所有的镜像,运行效果如下:

4、其中-a和-q参数可以一起使用,表示列出本地所有镜像的所有IMAGE ID,运行、删除镜像会用到IMAGE ID,以后要运行镜像时,这个命令会很好用。

5、加上–digests,显示镜像的摘要信息

7、加上镜像名可以查看指定的镜像,比如我要查看centos的镜像,命令如下:

三、然后是帮助命令,这个命令很重要,是用于查看docker常用命令的命令

英语功底好的小伙伴可以试着自己看,英语不好的也可以借助翻译软件哈!

四、Linux有查找文件的命令,docker同样有查找镜像的命令

1、先简单使用一下,比如查找tomcat镜像的命令,docker查找tomcat镜像的命令如下:

2、加上-f=stars=30查找stars大于三十,就是点赞数大于三十的tomcat镜像,命令如下:

五、前面已经提到了拉取镜像的命令,现在来详细说明一下

1、先简单使用一下,比如说我们要拉取Redis镜像,命令如下:

等待拉取完成即可,再用docker images命令看看镜像有没有拉取成功

docker pull redis相当于docker pull redis:latest,冒号后面的是版本号,就是默认拉取该镜像的最新版本,要拉取指定的版本可以在冒号后面带上相应的版本号即可。

六、拉完镜像了,有些镜像不需要时,我们可以考虑怎么删除。

1、先简单使用一下删除镜像的命令,比如说要删除hello-world镜像,命令如下:

报错是因为之前运行过hello-world镜像,而镜像里面是一层一层的,删除一个镜像相当于删除一组文件,当然会报错,参考Linux删除一组文件的情况,下面才是docker删除hello-world的正确姿势,即相当于删除多个镜像

2、接下来是删除本地全部镜像,命令如下:

这个慎用哈,咱就不试了。

七、上面已经明白了如何拉取、移除以及查看容器的基本信息,接下来咱们来看看如何运行容器。

1、在运行容器前先用docker images命令查看容器的基本信息,
接着运行容器,可以使用容器的REPOSITORY或者IMAGE ID运行容器,比如说我要运行centos的镜像,命令如下:

其中参数-i表示以交互模式运行容器,-t表示为容器重新分配一个伪输入终端。-i与-t通常同时使用。

可以看到容器已经成功运行了。

docker ps是查看所有正在运行的容器的命令,在下面会详细说明。而names是默认随机分配的名字。

2、当然也可以用镜像名来运行一个镜像,比如要运行centos镜像,和使用IMAGE ID运行容器的效果一样。

3、我们也可以在容器运行时为容器取一个名字。比如我们在运行centos容器时为容器取名myCentos,命令如下:

ctrl+P+Q回到宿主机中查看。

4、也可以使用start + CONTAINER ID启动之前运行过,但已经停止的容器,比如我们要启动CONTAINER ID为b9容器,命令如下:

docker ps -n 5命令表示查看最近运行过的5个容器,后面会详细说明。

5、我们也可以使用指定的端口运行容器,这里以tomcat为例,比如我要使用8888端口运行tomcat镜像,命令如下:

出现如下界面表示运行成功啦!

接着使用命令构建一下镜像,镜像名为mycentos,命令如下:

2、然后使用命令构建一个名为myip的镜像,命令如下:

注意要在最后面看到Successfully什么的才算构建成功。
3、镜像已经构建好了,接下来我们运行一下看看有什么效果吧,运行命令如下:

2、基于Dockerfile4文件构建一个名为myip2的镜像,命令如下:

3、接下来加上-i参数看看有什么结果。运行结果如下:
可以看到显示出了域名的html内容。RNTRYPOINT相当于在后面追加-i参数。

二十四、接着我们看看ONBUILD关键字的效果。

可以看到出现了父镜像中的内容。

二十五、接着我们自定义一个tomcat9。

1、先建好文件目录,拷贝tomcat和jdk压缩包到该目录,过程如下:
2、编辑Dockerfile文件,文件内容如下:

4、进入容器的mysql数据库,完整的操作如下:
5、简单地操作一下数据库,过程如下:

我要回帖

更多关于 varlist required什么意思 的文章

 

随机推荐