zoukankan      html  css  js  c++  java
  • docker

    Docker

    入门到精通

    """
    1)docker就是Linux上及其轻量的虚拟机
    
    2)虚拟机是存在宿主系统中,通过镜像给宿主系统拓展子系统的(一个镜像理论上可以做n个子系统)
    
    3)两个特别重要的概念
    	image:镜像
    	container:容器(子系统)
    	
    4)工作方式:
    	i)在服务器系统下载docker(为服务器安装虚拟机,服务器系统就是宿主系统)
    	ii)用docker去下载对应需求的镜像:镜像操作
    	iii)通过镜像制造容器(装子系统):容器操作
    	
    
    5)优势
    	i)超级轻量级,docker安装的容器体积可以按kB度量
    	ii)集群部署,docker可以通过一个镜像制造出多个一模一样的容器
    	iii)便捷管理所有镜像与容器(命令行操作)
    	
    6)镜像和容器特点
    	一般一个镜像中只包含一种软件:比如mysql镜像,创建的容器中只有mysql环境;redis镜像,创建的容器中只有redis环境
    	注:一个镜像中有多个环境的需要自己制作镜像
    """
    

    CentOS安装Docker

    设置管理Docker的仓库

    """
    1)安装依赖
    sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    
    2)安装稳定仓库
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    """
    

    安装Docker Engine-Community

    """
    1)安装
    >: yum install docker-ce docker-ce-cli containerd.io
    
    2)如果提示您接受 GPG 密钥,请允许
    """
    

    Docker基础命令

    开启关闭

    """
    1)启动
    >: service docker start  |  systemctl start docker
    
    2)关闭
    >: service docker stop  |  systemctl stop docker
    
    3)重启
    >: service docker restart  |  systemctl restart docker
    """
    

    镜像操作

    """
    1)列出镜像
    >: docker image ls
    
    2)拉取镜像
    >: docker [image] pull 镜像名:版本
    eg: docker image pull hello-world:latest
    
    3)删除镜像
    >: docker image rm 镜像ID
    
    4)将容器反向打包镜像
    >: docker save -o <文件名.tar>  <镜像名>
    
    5)根据打包的镜像文件加载镜像
    >: docker load -i <文件名.tar>
    """
    

    容器操作

    """
    1)创建容器
    >: docker run [选项参数] 镜像名 [命令]
    
    2)查看所有容器:-a就是--all代表全部展示
    >: docker container ls [-a]
    >: docker ps [-a]
    
    2)停止一个已经在运行的容器
    >: docker [container] stop 容器id
    
    3)启动一个已经停止的容器
    >: docker [container] start 容器id
    
    4)kill掉一个已经在运行的容器
    >: docker [container] kill 容器id
    
    5)删除容器
    >: docker [container] rm 容器id
    
    6)进入容器
    >: docker [container] exec 参数 容器id bash
    eg: docker exec -it 685e1 bash
    
    7)退出容器
    >: exit
    """
    

    Docker安装Mysql

    """
    1)安装
    >: docker image pull mysql:5.7
        
    2)创建容器:root根用户的密码MYSQL_ROOT_PASSWORD采用的是root
    >: docker container run -itd -p3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7
            
    注:本地测试
    >: mysql -hIP -P端口 -uroot -p密码
    
    >: mysql -h 39.99.192.127 -P 3306 -u root -p
    >: root
    >: create database luffy default charset=utf8;
    >: grant all privileges on luffy.* to 'luffy'@'%' identified by 'Luffy123?';
    >: grant all privileges on luffy.* to 'luffy'@'localhost' identified by 'Luffy123?';
    >: flush privileges;
    """
    

    Docker安装Redis

    """
    1)安装
    >: docker pull redis:4.0.9
    
    2)创建容器
    >: docker container run -itd -p6379:6379 redis:4.0.9
        
    3)进入容器
    >: docker container exec -it <容器名称/容器ID> bash
    
    4)测试
    >: redis-cli
    
    >: redis-cli -h 39.99.192.127 -p 6379
    >: config set requirepass Admin123
    """
    
  • 相关阅读:
    Spring IOC容器基于配置文件装配Bean(5) ------通过工厂方法配置bean
    Spring IOC容器基于配置文件装配Bean(4) ------bean生命周期
    Spring IOC容器基于配置文件装配Bean(3) ------装配集合属性
    Spring IOC容器基于配置文件装配Bean(2) ------通过setter或构造方法注入
    Spring IOC容器基于配置文件装配Bean(1) ------设置autowire自动装配
    Java实现序列化的作用和目的
    静态语言与动态语言
    C# WinForm 界面控件
    C# 中类与继承等概念
    C# 中的函数与方法
  • 原文地址:https://www.cnblogs.com/kai-/p/12444763.html
Copyright © 2011-2022 走看看