• 安装Docker:

    查看你当前的内核版本:
    uname -r
    更新yum包:
    sudo yum update
    卸载旧版本(如果安装过旧版本的话):
    sudo yum remove docker docker-common docker-selinux docker-engine
    安装需要的软件包:
    sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    设置yum源:
    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    查看所有仓库中所有docker版本:
    yum list docker-ce --showduplicates | sort -r
    安装docker:
    sudo yum install docker-ce #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版
    sudo yum install <FQPN> # 例如:sudo yum install docker-ce-17.12.0.ce
    启动并加入开机启动:
    sudo systemctl start docker
    sudo systemctl enable docker
    验证安装是否成功:
    docker version
    查看docker启动状态:
    systemctl status docker

  • 常用命令:

    docker ps #查找需要的服务
    docker logs -f 加上CONTAINER ID #查看相应的日志
    docker logs --since 30m CONTAINER_ID #查看最近30分钟日志
    docker ps -a  #查看所有容器
    docker rm 容器id  #删除容器
    docker images #查看镜像
    docker rmi 镜像名称 #删除镜像
    docker stop 容器ID或容器名 #停止容器
    docker kill 容器ID或容器名 #直接关闭容器
    docker restart 容器ID或容器名 #不管容器是否启动,直接重启容器
    docker exec -it 容器ID /bin/bash #进入容器
    exit #退出容器

  • Idea设置Docker远程插件

    • 没有插件就先安装docker插件。

    • 连接Docker。

    • 如果显示不成功,报异常如下:
    • 那么需要docker开启远程连接功能。

      vim /lib/systemd/system/docker.service    #编辑这个文件
      ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock #修改内容
      systemctl daemon-reload  #重新启动docker
      systemctl restart docker

  • 通过命令使用Docker部署jar包:
    • 项目打成jar包,上传服务器,同级目录下建一个Dockerfile文件

      vi Dockerfile
      FROM java:8                           #拉取一个jdk为1.8的docker image
      MAINTAINER L #作者是L
      ADD app-0.0.1-SNAPSHOT.jar app.jar #上传的jar包(app-0.0.1-SNAPSHOT.jar),替换为jar包的名称(容器中运行的是app.jar)
      EXPOSE 8088 #jar包在容器中运行的端口号(项目启动的端口号)
      ENTRYPOINT ["java","-jar","app.jar"] #容器启动之后执行的命令:java -jar app.jar  即启动jar
    • 构建镜像:
      docker build -t appimage  .    # . 表示 Dockerfile 文件在当前目录下,appimage  是镜像名称
    • 运行容器:
      docker run -d --name app -p 8091:8088 appimage
      -d: 后台运行容器,并返回容器ID;
      --name appimage:appimage镜像名称;
      -p: 端口映射,格式为:主机(宿主)端口:容器端口。意思是第一个访问服务器的端口,第二个是项目端口;
      app: 容器名称

 


  • Docker安装Redis:

    • docker pull redis:latest  #拉取官方的最新版本的镜像
      docker images #查看是否已安装了 redis
      docker run -itd --name redis-test -p 6379:6379 redis #运行 redis 容器
      docker exec -it redis-test /bin/bash #通过 redis-cli 连接测试使用 redis 服务

    • 1.从官网获取 redis.conf 配置文件
      2.修改默认配置文件
      bind 127.0.0.1 #注释掉这部分,这是限制redis只能本地访问
      protected-mode no #默认yes,开启保护模式,限制为本地访问
      daemonize no#默认no,改为yes意为以守护进程方式启动,可后台运行,除非kill进程(可选),改为yes会使配置文件方式启动redis失败
      dir ./ #输入本地redis数据库存放文件夹(可选)
      appendonly yes #redis持久化(可选) 3.docker 启动 redis 命令:
      列1:
      docker run -p 6379:6379 --name redis -v /usr/local/docker/redis.conf:/etc/redis/redis.conf -v /usr/local/docker/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

      列2:
      docker run -p 6379:6379 --name redis -v $PWD/redis.conf:/etc/redis/redis.conf -v $PWD/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes 4.命令解释说明:
      -p 6379:6379 端口映射:前表示主机部分,:后表示容器部分。
      --name myredis 指定该容器名称,查看和进行操作都比较方便。
      -v 挂载目录,规则与端口映射相同。
      -d redis 表示后台启动redis
      redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录/usr/local/docker/redis.conf
      appendonly yes 开启redis 持久化
        $PWD  当前目录
       

  • Docker安装Mysql:

    • docker pull mysql:latest       #拉取官方的最新版本的镜像
      docker images #查看是否已安装了 mysql
      docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql #运行 mysql 容器
      -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
      MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。
      docker ps #查看是否安装成功
    • Docker安装完Mysql后,Navicat连接不上的问题:
    1. 进入mysql客户端:docker exec  -it  mysql的容器名  /bin/bash
    2. 进入mysql命令行:mysql -u root -p123456   (123456就是mysql的登录密码,在docker run的时候设置的)
    3. 查看用户信息:select host,user,plugin,authentication_string from mysql.user; (mysql命令行中输入sql语句)
    4. 重新设置密码:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'newpassword'  (newpassword就是新的密码)
    5. 使用Navicat重新连接:成功。原文链接:https://blog.csdn.net/cainiaobulan/article/details/88389948

  • Docker清除日志:

    在使用docker的时候,我们经常通过
    docker logs -f containername或者id
    但是有时候日志很多。很麻烦。所以需要清理一下对应container的日志。
    默认情况下,daocker日志一般放在以下目录:
    /var/lib/docker/containers/
    然后找到对应的container,然后进去,通过echo “” > **.log 即可

    原文链接:https://blog.csdn.net/brotherdong90/article/details/79292534

Docker安装与部署的更多相关文章

  1. ubuntu docker安装与部署java,mysql,nginx镜像

    docker 安装与部署java,mysql,nginx docker 配置 安装docker $ sudo apt-get remove docker docker-engine docker.io ...

  2. docker安装tomcat&部署javaweb程序

    一.docker定制简单的java-web应用镜像 网址: 1.jdk下载网址:https://www.oracle.com/technetwork/java/javase/downloads/jdk ...

  3. Docker安装及部署实例.Net Core

    1.什么是Docker Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱 ...

  4. Docker 安装并部署Tomcat、Mysql8、Redis

    1.  安装前检查 1 #ContOS 7安装Docker系统为64位,内核版本为3.10+ 2 lsb_release -a 3 4 uname -r 5 6 #更新yum源 7 yum -y up ...

  5. centos7+docker 安装和部署crawlab分布式爬虫平台,并使用docker-compose管理docker

    1.先决条件centos7+docker最新版本 sudo yum updat 2.配置一下镜像源,创建/etc/docker/daemon.conf文件,在其中输入如下内容 { "regi ...

  6. Docker 版rocketmq部署

    rocketmq 部署启动指南-Docker 版   最近学习使用 rocketmq,需要搭建 rocketmq 服务端,本文主要记录 rocketmq 搭建过程以及这个过程踩到的一些坑. 准备工作# ...

  7. docker 安装 oracle

    docker 安装 oracle 部署链接:https://www.linuxidc.com/Linux/2017-03/141760.htm 本次使用docker安装oracle 1.搜索可使用的镜 ...

  8. 使用docker安装部署Spark集群来训练CNN(含Python实例)

    使用docker安装部署Spark集群来训练CNN(含Python实例) http://blog.csdn.net/cyh_24/article/details/49683221 实验室有4台神服务器 ...

  9. Docker安装部署redis

    借鉴博客:https://my.oschina.net/u/3489495/blog/1825335 待续... >>>>>>>>>docker安 ...

随机推荐

  1. go-micro框架学习1-准备工作

    下载golang环境,地址:https://studygolang.com/dl,这里使用的是1.11.10版本. 下载golang IDE,这里使用Lite,下载地址:http://liteide. ...

  2. 取消Windows server 2008关机提示备注的方法

    打开“开始”-“运行”,在“打开”一栏中输入“gpedit.msc”命令打开组策略编辑器,依次展开“计算机配置”→“管理模板”→“系统”,双击右侧窗口出现的“显示‘关闭事件跟踪程序’”,将“未配置”改 ...

  3. Word2016经常复制公式卡死无响应如何解决?

    Word文件 > 选项 > 高级 > 显示 > 禁用“硬件图形加速”

  4. JAVA多态中的隐藏和覆盖

    Java的引用变量有两个类型,一个是编译时类型,一个是运行时类型 编译时类型:由声明该变量时使用的类型决定 运行时类型:由该变量指向的对象类型决定 如果编译时类型和运行时类型不一致,会出现所谓的多态. ...

  5. [CMD] 批处理

    https://www.tutorialspoint.com/batch_script/batch_script_commands.htm

  6. JavaWeb实现增删查改(图书信息管理)之删除功能实现

    —————————————————————————————————————————————————————————— 删除按钮对应的servlet -->DeleteBooks.java  ↓ ...

  7. 链表习题(6)-链表返回倒数第k个数的位置的值

    /*链表返回倒数第k个数的位置的值*/ /* 算法思想:先取得链表的长度len,之后获取len-k+1的位置元素的值 */ Elemtype Getelem_rear(LinkList L, int ...

  8. Python中的int函数

    python帮组文档 class int(x, base=10) Return an integer object constructed from a number or string x, or ...

  9. linux 下用C实现 ATM 自动取款机功能 (进程间通信)

    直接先上图: 项目需求: 主要分为两人大模块: 客户端 .进入时的功能开户.销户.登录.解锁 开户:输入姓名.身份证号.设置密码,如果开户成功,则服务器上保存一个账号信号(一个账号存一个文件,文件名建 ...

  10. 【Linux】Linux目录结构及详细介绍

    00. 目录 01. 常用目录介绍 /:根目录,位于Linux文件系统目录结构的顶层,一般根目录下只存放目录,不要存放文件,/etc./bin./dev./lib./sbin应该和根目录放置在一个分区 ...