===========2019年8月5日18:39:06====================
10.20.100.21
root
bayaim

==========01-Docker介绍===================
docker -- go 语言编写
一次运算,到处运行
只能 运行在linux 64位系统

docker 组成: (后台进程)
1.镜像(image)
2.容器(container)
3.仓库(repository)
docker 和 openstack 对比

========02-Docker应用场景===================
1.简化配置 (构建一次就好)
2.提高开发效率
3.应用的隔离
4.服务器的整合
5.多租户环境下使用
6.快速的部署
7.代码流水线管理
8.开发调试的工作
微服务

==========03-Docker镜像和容器===================

docker search httpd //查找镜像
docker pull 镜像名称:镜像版本号 //从docker官方镜像仓库下载镜像
docker pull mysql

------------------------------------------------------------------------
docker run -i -t centos /bin/bash 在容器里启动一个/bin/bash shell环境,可以登录进入操作,其中-t 表示打开一个终端的意思,-i表示可以交互输入。
docker run -d -i -t centos /bin/bash 在后台启动
docker run -d centos:v1 /bin/bash ,-d表示在后台启动,以daemon方式启动。
docker run -d -p 80:80 -p 8022:22 centos:latest /usr/bin/sshd -D
docker run -d --name mynginx nginx
docker run -d -i -t --name myubuntu ubuntu /bin/bash

docker exec -it 容器名称 /bin/bash //进入容器内部

docker ps -a | grep nginx
docker ps //查看运行的容器
docker ps -a //查看所有的容器
docker ps -l 命令获得最后一个容器的id,docker ps -a查看所有的容器

docker start 容器名称 //启动容器
docker stop 容器名称 //停止运行的容器
docker restart 容器名称 //重启容器

docker inspect 容器名称 //查看容器详细
docker logs -f --tail=100 容器名称 //查看容器日志并指定日志行数为100

docker rm 容器名称 //删除容器 --必须停止容器才能删除容器
docker rmi 镜像名称:镜像版本号 //删除镜像 --必须删除容器才能删除镜像

yum install -y util-linux
docker ps -l
docker inspect --format "{{.State.Pid}}" mynginx

这里有报错“mesg: ttyname failed: No such file or directory” ,,
解决方法是在 nsenter 指令后面指定一个执行的shell,, /bin/bash
[root@devdtt ~]# nsenter --target 11950 --mount --uts --ipc --net --pid /bin/bash

#!/bin/bash
CNAME=$1
CPID=$(docker inspect --format "{{.State.Pid}}" $CNAME)
nsenter --target "$CPID" --mount --uts --ipc --net --pid /bin/bash

docker exec -it 容器名称 /bin/bash //进入容器内部

-----------访问-----ip 技术

apt-get update
apt-get install iputils-ping
apt install net-tools

随机映射: -P (大写P) docker run -P -d --name mynginx1 nginx
指定端口: -p (小写) docker run -d -p 91:80 --name mynginx2 nginx

==========05-Docker 的数据管理===================

数据卷

docker run -it --name volume-centos -h nginx -v /data centos

docker inspect 容器名称 //查看容器详细
数据卷容器
docker inspect -f {{.Volumes}} volume-centos
docker inspect -f {{.Config.Volumes}} volume-centos

docker inspect volume-centos | grep Mounts -A 10

docker run -it --name volumes-test2 -h nginx -v /opt:/opt centos

============06-Docker镜像构建-手动构建===================

docker exec -it 容器名称 /bin/bash //进入容器内部

yum install -y wget gcc gcc-c++ make openssl-devel

yum -y install pcre-devel

wget http://nginx.org/download/nginx-1.17.2.tar.gz
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/

tar zxf nginx-1.17.2.tar.gz
useradd -s /sbin/nologin -M nginx

./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre

vi /etc/rc.local
/usr/local/nginx/sbin/nginx
vi /usr/local/nginx/conf/nginx.conf
daemon off;

docker commit -m "my nginx" 34cc2130e40d baipy/my-nginx:v1
docker images
docker run -d -p 99:80 baipy/my-nginx:v2 /usr/local/nginx/sbin/

============07-Docker镜像构建-Dockerfile===================

dockerfile
docker build -t
Dockerfil

from
maintainer
run
add
workdir
volume
expose

============08-Docker核心原理-资源隔离和限制===================
LXC linux 的容器技术 kernel namespace

docker pull registry
namespace
pid
资源隔开

============09-Docker核心原理-网络和Registry============

host 模式

bayaim——听课笔记_01.Docker基础应用 10课.txt的更多相关文章

  1. 【docker简易笔记】docker基础信息的分享

    docker 使用的频率越来越高,所以在后续的一些博客中会分享一些docker的安装和使用. 一.docker介绍   "Docker 最初是 dotCloud 公司创始人 Solomon ...

  2. 【学习笔记】Docker基础

    基本概念 Docker是什么? Docker是一种基于Golang开发的虚拟化技术,开发人员和系统管理员使用容器开发,部署和运行应用程序的平台. 使用Linux容器部署应用程序称为容器化. 容器不是新 ...

  3. 『现学现忘』Docker基础 — 10、Docker的安装

    目录 1.前提 2.通过yum安装Docker (1)更新yum包 (2)移除旧的Docker版本 (3)安装必须的软件包 (4)设置稳定yum源仓库 (5)更新yum软件包索引 (6)开始安装Doc ...

  4. bayaim_java_入门到精通_听课笔记bayaim_20181120

    ------------------java_入门到精通_听课笔记bayaim_20181120--------------------------------- Java的三种技术架构: JAVAE ...

  5. 【云计算】Docker云平台—Docker基础

    Docker云平台系列共三讲,此为第一讲:Docker基础 参考资料: Docker官方文档:https://docs.docker.com/ Docker从入门到实践:https://yeasy.g ...

  6. 8.python笔记之面向对象基础

    title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...

  7. Docker基础技术:Linux Namespace(下)

    在 Docker基础技术:Linux Namespace(上篇)中我们了解了,UTD.IPC.PID.Mount 四个namespace,我们模仿Docker做了一个相当相当山寨的镜像.在这一篇中,主 ...

  8. Docker 基础技术:Linux Namespace(下)

    导读 在Docker基础技术:Linux Namespace(上篇)中我们了解了,UTD.IPC.PID.Mount 四个namespace,我们模仿Docker做了一个相当相当山寨的镜像.在这一篇中 ...

  9. Docker系列03—Docker 基础入门

    本文收录在容器技术学习系列文章总目录 1.概念介绍 1.1 容器 1.1.1 介绍 容纳其它物品的工具,可以部分或完全封闭,被用于容纳.储存.运输物品.物体可以被放置在容器中,而容器则可以保护内容物. ...

随机推荐

  1. Tensorflow多层LSTM代码分析

    1.tf.Graph() 你一旦开始你的任务,就已经有一个默认的图已经创建好了.而且可以通过调用tf.get_default_graph()来访问到. 添加一个操作到默认的图里面,只要简单的调用一个定 ...

  2. 【JAVA - 基础】之String存储机制浅析

    本文主要解决以下几个问题 String源码解析? String和new String的区别? String通过"+"或concat累加时的对象创建机制? StringBuilder ...

  3. Clearcase Key commands check in code on linux

    Supposed you are implemented done with all your codes(c is the alias for cleartool): New version add ...

  4. 如何把图片变得炫酷多彩,Python教你这样实现!

    有趣的图片 如何能让图片变得好玩?首先需要让它动起来!可如果是多张图片,我们还可以将其拼接起来组成gif动图,可一张图怎么玩?记得之前写过一个小练习,把一张图片拆分成九宫格的分片图.那么,能否由此下手 ...

  5. 我是怎样测试Java类的线程安全性的

    线程安全性是Java等语言/平台中类的一个重要标准,在Java中,我们经常在线程之间共享对象.由于缺乏线程安全性而导致的问题很难调试,因为它们是偶发的,而且几乎不可能有目的地重现.如何测试对象以确保它 ...

  6. 链接脚本(Linker Script)用法解析(一) 关键字SECTIONS与MEMORY

    1.MEMORY关键字用于描述一个MCU ROM和RAM的内存地址分布(Memory Map),MEMORY中所做的内存描述主要用于SECTIONS中LMA和VMA的定义. 2.SECTIONS关键字 ...

  7. 了解BootLoader——基于MPC5744P Bootloader例程

    一.BootLoader的作用:BootLoader是固化在PFlash中的一个程序,其作用可以分为两部分:boot和load. (1)boot:MCU上电时首先会运行BootLoader程序(因为它 ...

  8. Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:build-helper-maven-plugin:1.8:add-test-source (execution: add-functional-source, phase: generate-sources)

    在maven项目中使用add-source时,pom.xml报如下错误: Plugin execution not covered by lifecycle configuration: org.co ...

  9. cocoapods 安装使用详解

    http://blog.csdn.net/showhilllee/article/details/38398119 http://www.jianshu.com/p/1222dd6c4271  删除 ...

  10. 创建自己的github仓库

    作者: wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/20067595 一.创建自己的github仓库 CocoaPods都托 ...