linux命令基础二

Centeros命令

初次安装后的初始化与常用工具安装

  • dhclient:自动生成ip

  • ip addr 查看ip地址

  • Virtual下设置可以上网也可以主机ping通的网卡

    • 网卡1启用Nat,设置名称,高级设置,记住mac地址
    • 网卡2启用host-only,设置网卡名称,记住mac地址
  • cd /etc/sysconfig/network-scripts/ 找到网络配置文件ifcfg-enp0s3

  • 编辑ifcfg-enp0s3文件

    HWADDR=08:00:27:55:26:A8 //添加这一句,mac是NAT网卡的mac地址
    TYPE=Ethernet
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=dhcp
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    IPV6_ADDR_GEN_MODE=stable-privacy
    NAME=enp0s3
    UUID=ad3faa1b-ce63-468e-8f92-d1015efd6bcf
    DEVICE=enp0s3
    ONBOOT=yes  //修改这一句
    
  • 重启网络service network restart

  • 复制一份网络配置文件改名:cp ifcfg-enp0s3 ifcfg-enp0s8

    HWADDR=08:00:27:7D:A0:04//修改ifcfg-enp0s8,mac是host-only网卡的mac地址
    TYPE=Ethernet
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=static//设置静态ip
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    IPV6_ADDR_GEN_MODE=stable-privacy
    NAME=enp0s8//配置文件名
    UUID=ad3faa1b-ce63-468e-8f92-d1015efd6bcf
    DEVICE=enp0s8
    ONBOOT=yes//
    IPADDR=192.168.56.2//最小ip开始
    NETMASK=255.255.255.0
    
  • ip addr两张网卡都启动,可上网主句可ping通

  • 安装图形化界面:yum groupinstall -y “GNOME Desktop”

  • init 5切换图形化桌面

  • 文件目录

    • bin:一般可执行文件
    • sbin:系统可执行文件
    • etc:全局配置
  • vi编辑器

    • 输入i进入编辑
    • w:保存不退出vi
    • wq:保存退出vi
    • q:不保存退出\
    • 按ESC输入冒号wq退出
  • docker相关操作命令

    • 安装系统工具:sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    • 添加软件信息源:sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    • rpm -qa|grep -i mysql:检测mysql是否安装
    • 更新yum缓存:sudo yum makecache fast
    • 安装docker:sudo yum -y install docker-ce
    • yum install docker-engine:安装docker包
    • yum list installed|grep docker:查看已经安装的docker包
    • yum –y remove docker.x86_64:卸载docker
    • sudo yum remove docker docker-common docker-selinux docker-ce-cli.x86_64:删除docker包
    • sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo:设置yum源
    • yum list docker-ce --showduplicates | sort -r:查看yum源docker列表
    • systemctl start docker:启动docker宿主机
    • docker search mysql:搜索线上mysql
    • docker pull mysql/mysql-server:下载mysql服务
    • docker images|grep tomcat:查看tomcat镜像
    • docker run -di --name=tensquare_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d centos/mysql-57-centos7:创建mysql容器
    • 启动nginx:docker run --name nginxfcs -p 80:80 -d nginx
    • docker run --name tomcat -p 80:80 -d tomcat
    • 配置nginx文件目录:mkdir -p /root/nginx/www /root/nginx/logs /root/nginx/conf
    • 创建新nginx容器nginx-web,并将www,logs,conf目录映射到本地:docker run -d -p 80:80 --name nginx-web -v /root/nginx/www:/usr/share/nginx/html -v /root/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
    • 进入mysql命令:docker exec -it tensquare_mysql bash
    • docker ps -a:查看安装
    • docker rm 4fa11859ae8f:删除安装
    • redis安装后需要修改:redis.conf 修改 daemonize no 为 daemonize yes
    • unitPrice=5.0, number=3, money=15.0, orderId=161, type=0, status=0
    • docker start 123123:启动指定安装
    • docker run -di --name=tensquare_redis -p 6379:6379 redis:docker启动redis
    • docker exec -it 1f01d8ad4519 bash 进入redis后台执行redis命令
      • redis-cli -h 192.168.0.24 -p 6379 -a 123456:连接
  • 在docker中使用rabbitmq

    • 初始安装rabbitmq(六个端口):docker run -di --name=tensquare_rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 15671:15671 -p15672:15672 -p 25672:25672 rabbitmq:management
    • 初始用户guest
  • Dockerfile

    • 什么是Dockerfile

      1. 对于开发人员:可以为开发团队提供一个完全一致的开发环境
      2. 对于测试人员,可以直接拿开发时所构建的镜像或者通过Dockerfile文件构建一个新的镜像开始工作了
      3. 对于运维人员,在部署时可以实现应用的无缝移植
    • Dockerfile常用命令

      命令作用
      FROM image_name:tag定义了使用哪个基础镜像启动构建流程
      MAINTAINER user_name声明镜像的创建者
      ENV key value设置环境变量 (可以写多条)
      RUN command是Dockerfile的核心部分(可以写多条)
      ADD source_dir/file dest_dir/file将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压
      COPY source_dir/file dest_dir/file和ADD相似,但是如果有压缩文件并不能解压
      WORKDIR path_dir设置工作目录
      EXPOSE port1 prot2用来指定端口,使容器内的应用可以通过端口和外界交互
      CMD argument在构建容器时使用,会被docker run 后的argument覆 盖
      ENTRYPOINT argument和CMD相似,但是并不会被docker run指定的参数覆盖
      VOLUME将本地文件夹或者其他容器的文件挂载到容器中
    • 基于docker搭建私有镜像与持续集成

      • Dockerfile环境搭建

        • 在usr/local创建dockerjdk8文件夹
        • 拷贝DockerFile配置文件到dockerjdk8目录
        • 拷贝jdk8安装文件
        • docker build -t=‘jdk1.8’ .:执行dockerfile
        • 退出到根目录docker启动jdk
          • docker run -di --name=tensquare_jdk jdk1.8
        • 下载私有仓库镜像:docker pull registry
        • docker run -di --name=registry -p 5000:5000 registry:启动私有仓库镜像
        • vi etc/docker/daemon.json:修改配置文件
          • 在文件中添加"insecure-registries":[“192.168.133.128:5000”]配置
        • 重启docker:systemctl restart docker
        • docker启动私有仓库
        • docker tag jdk1.8 192.168.133.128:5000/jdk1.8:标记本地文件到私有库
        • docker push 192.168.133.128:5000/jdk1.8:上传到私有库
      • maven插件自动部署(此方式是maven的自动部署,与持续集成不同)

        • 修改docker机的宿主配置,让其可以远程访问:

          • 打开配置文件:vi /lib/systemd/system/docker.service
          • 修改配置文件:在"ExecStart=/usr/bin/dockerd"后边添加 -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
        • 重启docker

          • 刷新daemon:systemctl daemon-reload
          • systemctl restart docker:重启
        • 重启仓库

        • 对基本的项目模块添加maven上传插件

          <build>
                  <finalName>app</finalName><!--项目名称-->
                  <plugins>
                      <plugin><!--spring-boot maven插件和下边衔接-->
                          <groupId>org.springframework.boot</groupId>
                          <artifactId>spring-boot-maven-plugin</artifactId>
                      </plugin>
                      <!-- docker的maven插件,官网 https://github.com/spotify/docker-maven-plugin -->
                      <plugin>
                          <groupId>com.spotify</groupId>
                          <artifactId>docker-maven-plugin</artifactId>
                          <version>0.4.13</version>
                          <configuration>
                              <imageName>192.168.133.128:5000/${project.artifactId}:${project.version}</imageName>
                              <baseImage>jdk1.8</baseImage>
                              <entryPoint>["java", "-jar","/${project.build.finalName}.jar"]</entryPoint>
                              <resources>
                                  <resource>
                                      <targetPath>/</targetPath>
                                      <directory>${project.build.directory}</directory>
                                      <include>${project.build.finalName}.jar</include>
                                  </resource>
                              </resources>
                              <dockerHost>http://192.168.133.128:2375</dockerHost>
                          </configuration>
                      </plugin>
                  </plugins>
              </build>
          
        • 在yml配置文件添加git仓库地址

          • –rabbitmq消息总线配置–
        • 在idea的命令行中构建上传项目模块:mvn clean package docker:build -DpushImage

          [外链图片转存失败(img-Q9mqyNJr-1568435892531)(D:\Users\Administrator.DESKTOP-NBB06J4\Desktop\微信截图_20190410060155.png)]

        • idea上传模块命令2:mvn package -Dmaven.test.skip=true docker:build -DpushImage

        • docker命令查看上传的模块

        • docker启动模块(指定端口|项目|版本):docker run -di --name=tensquare_config -p 8070:8070 192.168.133.128:5000/tensquare_config:1.0-SNAPSHOT

        • 启动后浏览器访问测试

    • 持续集成

      • docker 下载gogs:docker pull gogs/gogs

      • 安装gogs:docker run -di --name=gogs -p 10022:22 -p 3000:3000 -v /var/gogsdata:/data gogs/gogs

        [外链图片转存失败(img-ewCp5BZU-1568435892533)(D:\Users\Administrator.DESKTOP-NBB06J4\Desktop\微信截图_20190410062144.png)]

        • 启动较慢
        • 根据配置的端口访问gogs:http://192.168.133.128:3000/
        • 然后配置gogs在网页安装
        • 注册用户,并登录
        • 上传代码到gogs
      • jenkins安装

        • 首先把jdk安装到宿主机上(此安装相当于整个环境下安装,与build的jdk容器不同)

          • 上传jdk.rpm文件
          • 执行安装命令:rpm -ivh jdk-8u171-linux-x64.rpm;此安装根目录:/usr/java/jdk.1.8
        • 下载Jenkins包/或者拖拽本地jenkins包到主机

        • 安装Jenkins: rpm -ivh jenkins-2.83-1.1.noarch.rpm

        • 修改Jenkins默认配置:vi /etc/sysconfig/jenkins

          • 修改用户:JENKINS_USER=“root”
          • 修改端口:JENKINS_PORT=“8888”
        • 启动Jenkins:systemctl start jenkins

        • 通过配置端口访问Jenkins

        • 在Jenkins配置文件查看密码:/var/lib/jenkins/secrets/initialAdminPassword

        • 登录后在系统配置中的可选插件搜索maven[Maven Integration]并直接安装

        • git和maven安装好就行

        • 全局工具配置

          • 修改本地仓库配置文件:vi /usr/local/maven/conf/settings.xml
            • /usr/local/repository
          • 把maven拖到usr/local下
        • 在idea安装基础公共模块:clean install

        • maven软件解压拖拽到服务器/usr/local

        • 把本地maven仓库拷贝到maven配置的仓库兵改为repository:里边放基础公共模块

        • jenkins中配置jdk环境为/usr/java/jdk1.8.0_171-amd64

        • 配置maven变量:/usr/local/maven

        • 创建新项目eureka,关联项目仓库到gogs,修改eureka的pom文件,clean package docker:build -DpushImage

        • 在上传的模块中添加maven部署插件

        • 在build中设置pom;clean package docker:build -DpushImage

        • jenkins点击发布

        • docker run di运行项目

          docker run -d -e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}' --name=node1 consul agent -server -bind=172.17.0.2  -bootstrap-expect=3 -node=node1
          -node:节点的名称 
          -bind:绑定的一个地址,用于节点之间通信的地址,可以是内外网,必须是可以访问到的地址 
          -server:这个就是表示这个节点是个SERVER 
          -bootstrap-expect:这个就是表示期望提供的SERVER节点数目,数目一达到,它就会被激活,然后就是LEADER了
          
  • 下载安装nginx

    • 首先确保安装g++、gcc、openssl-devel、pcre-devel和zlib-devel软件
      • 命令:yum install gcc-c++
      • yum -y install zlib zlib-devel openssl openssl–devel pcre pcre-devel
      • 已安装通过yum remove nginx来卸载
    • 下载nginx包:wget https://nginx.org/download/nginx-1.11.3.tar.gz
    • 或者使用docker下载nginx安装包:docker pull nginx
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值