一、docker 的安装部署

这里不过多介绍,下面这两个linux发型版 安装可以参考

ubuntu的 docker-ce安装

centos7的 docker-ce安装

二.docker配置文件

重要参数解释:

OPTIONS 用来控制Docker Daemon进程参数
-H 表示Docker Daemon绑定的地址, -H=unix:///var/run/docker.sock -H=tcp://0.0.0.0:2375
--registry-mirror表示Docker Registry的镜像地址--registry-mirror=http://4bc5abeb.m.daocloud.io
--insecure-registry表示(本地)私有Docker Registry的地址, --insecure-registry ${pivateRegistyHost}:
--selinux-enabled是否开启SELinux,默认开启 --selinux-enabled=true
--bip 表示网桥docker0使用指定CIDR网络地址,--bip=172.17.42.1
-b 表示采用已经创建好的网桥, -b=xxx
重要参数解释:
OPTIONS=-H=unix:///var/run/docker.sock -H=tcp://0.0.0.0:2375 --registrymirror=http://4bc5abeb.m.daocloud.io
--selinux-enabled=true
下面是代理的设置
http_proxy=xxxxx:
https_proxy=xxxxxx:

三.Docker基础命令

docker search   搜索的相关镜像按热度排名 列表展示

[root@docker ~]# docker search java
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
node Node.js is a JavaScript-based platform for s… [OK]
tomcat Apache Tomcat is an open source implementati… [OK]
java Java is a concurrent, class-based, and objec… [OK]
openjdk OpenJDK is an open-source implementation of … [OK]
ghost Ghost is a free and open source blogging pla… [OK]
anapsix/alpine-java Oracle Java (and ) with GLIBC 2.23 over A… [OK]
jetty Jetty provides a Web server and javax.servle… [OK]
couchdb CouchDB is a database that uses JSON for doc… [OK]
tomee Apache TomEE is an all-Apache Java EE certif… [OK]
ibmjava Official IBM® SDK, Java™ Technology Edition … [OK]
groovy Apache Groovy is a multi-faceted language fo… [OK]
lwieske/java- Oracle Java Container - Full + Slim - Base… [OK]
cloudbees/jnlp-slave-with-java-build-tools Extends cloudbees/java-build-tools docker im… [OK]
zabbix/zabbix-java-gateway Zabbix Java Gateway [OK]
davidcaste/alpine-java-unlimited-jce Oracle Java (and ) with GLIBC 2.21 over A… [OK]
frekele/java docker run --rm --name java frekele/java [OK]
blacklabelops/java Java Base Images. [OK]
fabric8/s2i-java S2I Builder Image for plain Java applications
rightctrl/java Oracle Java [OK]
jorgemoralespou/s2i-java OpenShift's Java S2I Builder image. Suitable… 2 [OK]
appuio/s2i-maven-java S2I Builder with Maven and Java [OK]
cfje/java-buildpack Java Buildpack CI Image
cfje/java-test-applications Java Test Applications CI Image
thingswise/java-docker Java + dcd [OK]
appuio/s2i-gradle-java S2I Builder with Gradle and Java [OK]

docker pull  从镜像站拉取镜像  tag:latest 标签为 最新

[root@docker ~]# docker pull java
Using default tag: latest
latest: Pulling from library/java
5040bd298390: Pull complete
fce5728aad85: Pull complete
76610ec20bf5: Pull complete
60170fec2151: Pull complete
e98f73de8f0d: Pull complete
11f7af24ed9c: Pull complete
49e2d6393f32: Pull complete
bb9cdec9c7f3: Pull complete
Digest: sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d
Status: Downloaded newer image for java:latest

docker images

[root@docker ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest e38bc07ac18e weeks ago .85kB
hello-world latest e38bc07ac18e weeks ago .85kB
java latest d23bdf5b1b1b months ago 643MB

docker run [OPTIONS] IMAGE[:TAG] [COMMAND] [ARG...]

docker run后面追加-d=true或者-d,那么容器将会运行在后台模式。
docker exec来进入到到该容器中,或者attach重新连接容器的会话
[root@docker ~]# docker run -it java java -version
openjdk version "1.8.0_111"
OpenJDK Runtime Environment (build 1.8.0_111-8u111-b14-~bpo8+-b14)
OpenJDK -Bit Server VM (build 25.111-b14, mixed mode)
[root@docker ~]# docker run -it java uname
Linux
[root@docker ~]# docker run -it java ps
PID TTY TIME CMD
pts/ :: ps
决定容器的运行方式,前台执行还是后台执行
进行交互式操作(例如Shell脚本),那我们必须使用-i -t参数同容器进行数据交互
docker run时没有指定--name,那么deamon会自动生成一个随机字符串UUID
Docker时有自动化的需求,你可以将containerID输出到指定的文件中(PIDfile): --cidfile="" --cidfile=""
Docker的容器是没有特权的,例如不能在容器中再启动一个容器。这是因为默认情况下容器是不能访问任何其它设 备的。但是通过"privileged",容器就拥有了访问任何其它设备的权限。

容器生命周期相关指令
docker create/start/stop/pause/unpause

[root@docker ~]# docker create -it --name="myjava" java java version
872e0e5104d1a137e96621c50a6a9e948073e6ba3ce4ee9bcdbf35e1e0326d20
[root@docker ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
872e0e5104d1 java "java version" seconds ago Created myjava
3eafb4d18f10 java "ip addr" About a minute ago Exited () About a minute ago elegant_ardinghelli
a01bb5aa8180 java "ipaddr" About a minute ago Created wizardly_leavitt
b6c29c6751cf java "ps" minutes ago Exited () minutes ago competent_varahamihira
70f07df484aa java "uname" minutes ago Exited () minutes ago sharp_keller
1e569804e429 java "java -version" minutes ago Exited () minutes ago kind_bell
934143e28fa2 hello-world "/hello" hours ago Exited () hours ago competent_khorana
48563e0fd4ca hello-world "/hello" hours ago Exited () hours ago wonderful_albattani
[root@docker ~]# docker start myjava
myjava
[root@docker ~]# docker create --name mysqlsrv1 -e MYSQL_ROOT_PASSWORD= -p : mysql
251bdc0842d93a6c957a283aecb65740813653300000e4d6aca8aeac9ca28333

[root@docker ~]# docker start mysqlsrv1
mysqlsrv1

[root@docker ~]# docker ps |grep mysql
251bdc0842d9 mysql "docker-entrypoint.s…" About a minute ago Up 29 seconds 0.0.0.0:3306->3306/tcp mysqlsrv1

[root@docker ~]# netstat -lntup|grep 3306
tcp6 0 0 :::3306 :::* LISTEN 41446/docker-proxy


[root@docker ~]# docker exec -it mysqlsrv1 /bin/bash
root@251bdc0842d9:/# mysql -uroot -p123456 -h10.0.0.7

mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.11 MySQL Community Server - GPL

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

 

docker stop 命令

[root@docker ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
251bdc0842d9 mysql "docker-entrypoint.s…" minutes ago Up minutes 0.0.0.0:->/tcp mysqlsrv1
[root@docker ~]# docker stop 251bdc0842d9
251bdc0842d9
[root@docker ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

docker rm命令

[root@docker ~]# docker ps -a|grep hello
934143e28fa2 hello-world "/hello" hours ago Exited () hours ago competent_khorana
48563e0fd4ca hello-world "/hello" hours ago Exited () hours ago wonderful_albattani
[root@docker ~]# docker rm 934143e28fa2
934143e28fa2
[root@docker ~]# docker rm 48563e0fd4ca
48563e0fd4ca
[root@docker ~]# docker ps -a|grep hello
[root@docker ~]# 

(二)docker的部署安装,配置,基础命令的更多相关文章

  1. Devops实战(一)Docker的部署安装以及Docker-Compose的使用

    Docker的部署安装以及Docker-Compose的使用 1.docker和docker-Compose简介 Docker是一组平台即服务(PaaS)产品,它们使用操作系统级虚拟化以称为容器的软件 ...

  2. docker 应用-1(安装以及基础命令)

    Docker 安装 还是看官方文档吧TAT https://docs.docker.com/engine/getstarted/step_one/ 理解docker镜像和容器 镜像就是docker容器 ...

  3. Linux ubuntu下docker容器安装和基础命令

    Docker介绍: 云计算就好比大货轮,docker就是集装箱虚拟机虽然可以隔离出很多"子电脑",但占用空间更大,启动更慢,虚拟机软件可能还要花钱(例如VMWare). 而容器技术 ...

  4. Docker简介与安装配置

    目录 Docker简介 什么是Docker 为啥要用容器 Docker Engine Docker架构说明 Docker安装 Docker版本介绍 Ubuntu安装docker-ce CentOS7安 ...

  5. Git入门(安装及基础命令行操作)

    一.安装 1.Mac 在Mac中安装Git的方法不止一种.最简单的要数通过Xcode命令行工具.对于Mavericks(10.9)或更高版本的操作系统,当你第一次尝试在终端执行git命令时,系统会自动 ...

  6. MongoDB 学习笔记一 安装以及基础命令

    一.MongoDB安装配置 1.获取最新版本号: wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.2.tgz 2.解压缩就可 ...

  7. nginx下载,安装,基础命令,和代理tomcat例子理解

    nginx代理讲的很好理解:https://www.cnblogs.com/ysocean/p/9392908.html 一.nginx应用场景: 1.反向代理(用的非常多) 客户端发出请求,反向代理 ...

  8. Docker的部署安装(CentOS)-by paymob

    环境准备 通过命令查看系统版本和内核版本等信息 [gmuser@--- ~]$ cat /etc/redhat-release CentOS Linux release (Core) [gmuser@ ...

  9. Docker的部署安装(CentOS)

    环境准备 操作系统需求 为兼容企业级应用,学习选用Centos7做为部署安装Docker的系统平台 # 通过以下命令可查看系统版本和内核版本等信息 cat /etc/redhat-release #- ...

随机推荐

  1. B1051 复数乘法(15 分)

    [PAT]B1051 复数乘法(15 分) - 路明天 - 博客园 https://www.cnblogs.com/hebust/p/9496809.html 在此对四舍五入输出结果做总结. 对于do ...

  2. 排序算法C语言实现——插入排序(优于冒泡)

    为什么插入排序要优于冒泡? 插入排序在于向已排序序列中插入新元素,主要的动作是移动元素,涉及1次赋值,即data[j] = data[j-1]; 而冒泡排序在于相邻元素交换位置,涉及3条赋值,即iTm ...

  3. Java面向对象---泛型

    概念 泛型可以解决数据类型的安全问题,主要原理是在类声明的时候通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型. 格式 访问权限 class 类名称<泛型,泛型...>{ ...

  4. 03018_监听器Listener

    1.什么是监听器? (1)监听器就是监听某个对象的状态变化的组件: (2)监听器的相关概念 ①事件源:被监听的对象------三个域对象:request.session.ServletContext ...

  5. Java-读取txt生成excel

    本段代码的目的是从txt文本中读取相应格式的数据,然后写入到对应格式的excel文档中 在敲本段代码的时候,也学习了一些其它知识点,如下: 1.byte[] b_charset= String.get ...

  6. Java并发之(1):volatile关键字(TIJ21-21.3.3 21.3.4)

    Java并发Java服务器端编程的一项必备技能. ** 1 简介    volatile是java中的一个保留关键字,它在英语中的含义是易变的,不稳定的.volatile像final.static等其 ...

  7. ogre3D学习基础16 -- 手动创建实体(ManualObject)

    这一节练习一下手动创建实体,用到了对象(ManualObject) 第一,依然是模板 #include "ExampleApplication.h" class Example1 ...

  8. Android 使用剪贴板传递简单数据及复杂数据的方法

    传递数据的场景在于不同页面之间跳转,需要携带数据:简单数据值指的是String, int等数据, 复杂数据指的是类 1.   使用剪贴板传递简单数据方法: 第一个页面里面放数据操作如下: Clipbo ...

  9. CentOS安装jdk和tomcat

    1.查看是否已经安装 java -version 2.卸载自带的openjdk dnf remove java-1.7.0-openjdk 3.下载jdk安装包 wget -c http://111. ...

  10. 查找docker log久远数据方法

    问题描述: 同事发现几天前运行的一个文件id存在错误,需要查看docker log,但是使用docker logs -f container_id 上下翻很耗费时间. 解决思路: 每条对应的log都会 ...