• 安装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. implement a list using Rust

    Rust果然比較複雜,在經歷了n次compile fail,終于寫成了一個 list 難點: 對Rc<>的用法不熟悉.對borrow checker不夠熟悉 有些寫法可能還不是最短的 us ...

  2. spring 技术内幕读书笔记1

    1 在 java 应用开发中,往往会涉及复杂的对象耦合关系,在 代码中处理这些耦合关系,对代码的维护性和应用扩展性会带来许多不便.通过使用spring 的 IOC 容器,可以对这些耦合关系实现一个文本 ...

  3. Linux云主机(离线)搭建本地yum源

    下载CentOS镜像 http://mirror.nsc.liu.se/centos-store/7.3.1611/isos/x86_64/ 离线yum源的配置 1.上传下载的镜像源iso 2.挂载i ...

  4. Python: ImportRequestsError: No module named 'requests'解决方法

    运行Python程序时,出现下面错误: import requests  ModuleNotFoundError: No module named ‘requests’ 原因:没有导入requests ...

  5. python 数据库导入excel

    import MySQLdb import xlwt def outMySQL(file_name): wb = xlwt.Workbook() sh = wb.add_sheet('sheet 1' ...

  6. seaborn做横向条形图

    数据格式如下 这里选择fold值最大的前20个作图进行展示 代码如下 import seaborn as sns import pandas as pd import numpy as np impo ...

  7. lambda表达式已经成为了开发者必须要掌握的技能?

    lambda表达式 lambda表达式是什么 引用百度百科 “Lambda 表达式”(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的la ...

  8. TemplateDoesNotExist

    路径问题,可能是没有配置这一行:

  9. 【转帖】处理器史话 | 这张漫画告诉你,为什么双核CPU能打败四核CPU?

    处理器史话 | 这张漫画告诉你,为什么双核CPU能打败四核CPU? https://www.eefocus.com/mcu-dsp/371324 2016-10-28 10:28 作者:付丽华预计 9 ...

  10. Docker创建镜像 并推拉Harbor

    创建镜像 一.根据dockerfile创建镜像 文件详解 1.mkdir dockerfile/lib/centos7base/ 创建目录 2.创建Dockerfile vim Dockerfile ...