大觅网

Docker镜像操作
查看镜像:docker images
搜索镜像:docker search 镜像关键字
拉取镜像:docker pull 选项 name tag
删除镜像:docker rmi 名称
提交容器成为镜像(Dockerfile):docker build -t yi/centos7 .

Docker容器操作
生成容器:docker run -d -p 8080:8080 --name tomcat-test tomcat
查看容器:docker ps
查看tomcat容器:docker ps -a|grep tomcat
停止容器:docker stop 容器名
启动容器:docker start 容器名
删除容器:docker rm 容器名
进入容器:docker exec -it tomcat /bin/bash
退出所有:exit
拷贝文件:docker cp 宿主机目录及文件 容器名称:容器目录

Docker Compose相关操作
查看版本:docker-compose --version
构建镜像:docker-compost build 服务名称
构建并启动容器:docker-compost up -d 服务名称
停止并销毁容器:docker-compost down 服务名称

虚拟机初始化配置
给root用户设置密码:sudo passwd
安装wget:apt-get install wget
安装SSH:apt-get install ssh
开启远程配置SSH权限
1.打开配置文件:vi /etc/ssh/sshd_config
2.修改配置:将PermitRootLogin without-password
改为PermitRootLogin yes
3.重启SSH:/etc/init.d/ssh restart
安装Docker构建基础镜像
apt-get install -y docker.io
下载基础镜像centos:docker pull centos
构建基础镜像
docker build -t yi/centos7-ssh .
docker build -t yi/centos7-jdk8u212 .
docker build -t yi/centos7-tomcat7 .
创建none镜像删除方法(root用户)
docker stop (docker ps -a | grep "Exited" | awk '{print1 }') //停止容器
docker rm (docker ps -a | grep "Exited" | awk '{print1 }') //删除容器
docker rmi (docker images | grep "none" | awk '{print3}') //删除镜像

安装Shipyard
安装Shipyard相关镜像:
docker pull shipyard/shipyard
docker pull swarm
docker pull shipyard/docker-proxy
docker pull alpine
docker pull microbox/etcd
docker pull rethinkdb
构建 Shipyard容器:
docker run -ti -d --restart=always --name shipyard-rethinkdb rethinkdb
docker run -ti -d -p 4001:4001 -p 7001:7001 --restart=always --name shipyard-discovery microbox/etcd:latest --name shipyard-porxy -v /var/run/docker.sock:/var/run/docker.sock -e PORT=2375 shipyard/docker-proxy:latest

Dockerfile文件的介绍
FROM 依赖的镜像
MAINTAINER hary_lei #指定作者
RUN用于在镜像容器中执行的命令
示例:
RUN rm apache-tomcat-7.0.93.tar.gz #shell执行
ADD将本地文件添加到容器中
ADD elasticsearch-6.2.4.tar.gz /usr/local # elasticsearch-6.2.4.tar.gz添加到usr/local下,*表示任意,?表示一个
CMD容器启动时才能进行调用
示例:
CMD["usr/bin/supervisord"]
CMD /usr/sbin/sshd -D
ENV设置环境变量
示例:
ENV JAVA_HOME=/usr/local/java/jdk1.8.0_191
ENV PATH=JAVA_HOME/bin:PATH
EXPOSE指定于外界交互的端口
示例:
EXPOSE 22
EXPOSE 8080
WORKDIR指定工作目录,类似于cd命令
示例:
WORKDIR /usr/local

安装docker-compose
sudo apt install docker-compose -y

解析docker-compost.yml.png
docker-compost命令使用.png
构建基础服务.png
设置mysql远程登录1.png
Mysql远程登录虚拟机.png

设置远程Mysql登录
登录容器:sudo docker exec -it envdm_mysql_1 /bin/base #进入Mysql容器
登录Mysql数据库:mysql -uroot #登录
切换数据库:use mysql
修改root密码为123456:update user set password=password('123456') where user='root' and host='localhost';
允许远程登录root用户
grant all privileges on . to root@'%' identified by '123456' with grant option;

使用命令操作redis1.png
命令操作redis.png
Snipaste_2019-08-15_16-21-41.png
Snipaste_2019-08-15_16-22-09.png
Snipaste_2019-08-15_16-22-27.png
注册中心(Eureka server)-application.yml
server:
  port: 7776
eureka:
  client:
    service-url:
        defaultZone: http://localhost:7776/eureka/
    fetch-registry: false
    register-with-eureka: false
security:
  basic:
      enabled: true
  user:
      name:  root
      password: 123456
客户端提供者(provider)-application.yml
server:
  port: 8080
spring:
  application:
    name: dmw-user-provider
eureka:
    client:
      service-uri:
        defaultZone:  http://localhost:7776/eureka/
logging:
    leval: info
客户端消费者(consumer)-application.yml
server:
  port: 8080
spring:
  application:
    name: dmw-user-consumer
eureka:
    client:
      service-uri:
        defaultZone:  http://localhost:7776/eureka/
feign:
   hystrix:
    enabled: true
dmw-user-provider:
    ribbon:
        NFLoadBalancerRuleClassName: com.netflix.loadbalancer...
网关(Zuul)-application.yml
server:
  port: 8080
eureka:
    client:
      service-uri:
        defaultZone:  http://localhost:7776/eureka/
zuul:
    routes:
        dmw-user-consumer: /user/**
management:
    secutiry:
      enabled: false

网关(Zuul)-bootstrap.yml
spring:
  application:
    name: dmw-gateway-zuul
cloud:
  config:
    uri: http://localhost:7900
    proflie: dev
    label: demo
读取码云的信息(config)-application.yml
server:
  port: 8080
spring:
  application:
    name: dmw-config-server
  cloud:
    config:
        server:
            git:
                uri: http://gitee.com/demo/demo.git
                uesrname: admin
                password: 123456
                search-paths: 分支下的目录文件
eureka:
    client:
      service-uri:
        defaultZone:  http://localhost:7776/eureka/
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Docker 学习目标: 掌握Docker基础知识,能够理解Docker镜像与容器的概念 完成Docker安装与启...
    执笔梦一场阅读 3,323评论 2 10
  • Docker是一种容器技术,它的存在就是为了解决容器技术本身的复杂性。Docker容器拥有很高的性能,同时同一台宿...
    四条眉毛陆小鸡阅读 607评论 0 0
  • 1. 简介 Docker整个体系类似于手机系统,应用与主机、应用之间都是相互隔离,采用沙盒模式运行,一键式安装和卸...
    保持微笑_Ivan阅读 836评论 0 0
  • 大觅网项目深入实践深受追捧的微服务框架-springCloud 同时使用SpringBoot为项目基本骨架 整个项...
    一直想上树的猪阅读 1,209评论 0 1
  • Docker 与运行环境无关,真正做到一次构建到处运行 拉取镜像: docker pull ip:port/tom...
    爱喝气泡水阅读 279评论 0 0