docker的下载安装和基本使用

我使用的mac,直接安装desktop。 然后命令行使用docker,关于desktop的使用,可以看官方文档

安装好之后,确认一下是否可以运行,输入docker version指令试试。

docker version

docker的基本指令

docker  info : 查看docker服务端的信息,比如有多少容器,有多少镜像在本地;

docker  search xxx  : 查找镜像仓库中的镜像

docker pull imageName:  拉取镜像到本地

docker run --name containerName -p containerport: dockerMachinePort imageName  : 运行镜像到本docker;

docker exec -it  containerName bash   进入docker容器内部,开启shell命令行

更多指令




还可以在idea中按照插件的方式使用docker

docker安装mongodb

下载镜像

docker pull mongo

启动镜像容器

docker run --name mongo -p 27017:27017 -v /data/mongo:/data/db -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=root -d mongo --serviceExecutor adaptive --wiredTigerCacheSizeGB 0.5

使用docker连接mongo

docker exec -it mongo bash

即可管理mongodb ;

mongo -u  root -p root
show dbs;
use springxxx;

idea连接mongodb

docker安装redis

  1. 拉取镜像
docker pull redis
  1. 启动docker容器
docker run --name redis -p 6379:6379 -d redis
  1. 进入容器内部执行redis指令
docker exex -it redis bash
  1. 执行redis指令
set a aaa
get a

docker安装mysql

  1. 拉取mysql指令
docker pull mysql:5.6.47
  1. 运行docker container ;
docker run --name mysql -p 3306:3306 -v /data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -e MYSQL_ROOT_HOST=% -d mysql:5.6.47 --character-set-server=utf8mb4
  1. 进入container,管理mysql
docker exec -it mysql bash
  1. 管理mysql
mysql -uroot  -proot
show databases;

打开idea的database,输入可以连接上;

docker运行springboot程序

  1. 准备好springboot程序;

starter.spring.io中快速生成;比如一个helloworld程序,写一个简单控制器;

package com.springbucket.demo_helloworld;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController; @SpringBootApplication
@RestController
public class Application { public static void main(String[] args) {
SpringApplication.run(Application.class, args);
} @GetMapping(path="hello")
public Object hello(){
return "hello";
} }
  1. 录入Dockerfile
From java:8
VOLUMN /tmp
ADD target/helloworld.jar app.jar
RUN bash -c 'touch /app.jar'
EXPORSE 8080
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom", "-jar","/app.jar"]
  1. 制作docker的image ;

在项目目录下,执行bash脚本:

docker build -t helloworld1 .
  1. 运行docker镜像;
docker run --name helloworld1  -p 8000:8080  -d helloworld1
  1. 访问程序;
curl http://localhost:8000/hello

原创不易,转载请注明出处。

0215 docker环境的更多相关文章

  1. 从头开始搭建分布式日志平台的docker环境

    上篇(spring mvc+ELK从头开始搭建日志平台)分享了从头开始搭建基于spring mvc+redis+logback+logstash+elasticsearch+kibana的分布式日志平 ...

  2. 包含深度学习常用框架的Docker环境

    相关的代码都在Github上,请参见我的Github,https://github.com/lijingpeng/deep-learning-notes 敬请多多关注哈~~~ All in one d ...

  3. docker环境 快速使用elasticsearch-head插件

    docker环境 快速使用elasticsearch-head插件 #elasticsearch配置 #进入elk容器 docker exec -it elk /bin/bash #head插件访问配 ...

  4. Docker环境 ELK 快速部署

    Docker环境 ELK快速部署 环境 Centos 7.4 , Docker version 17.12 Docker至少3GB内存: #内核配置 echo ' vm.max_map_count = ...

  5. docker环境部署

    docker环境部署 1 查看当前系统版本 只支持CentOS7版本的系统,如果不是的话,可以让项目方进行重装或者系统内核升级. [root@bogon bin]# cat /etc/redhat-r ...

  6. centos7系统下 docker 环境搭建

    运行环境: VMware Workstation Pro 在虚拟机中安装centos7系统, 选择最小安装, 网络连接方式选择的桥接(与宿主机在同一IP段)centos7一定要安装64位, docke ...

  7. npm私有仓库 配置verdaccio在docker环境

    前端开发过程中,少不了自己封装一些通用的包,但又不想放在公共的平台,所以搭建一个npm私有的仓库是很有必要的. 在这里简单介绍如何使用 verdoccio 在docker环境下的配置.verdocci ...

  8. .netcore mvc docker环境jenkins一键部署(DevOps)

    [前言] DevOps方面的文章很早之前就想分享了,挤出一点时间把前段时间搭建的一些提高开发效率的东西给大家分享一下吧. 本文介绍了一个.netcore mvc web项目,从项目push到githu ...

  9. Docker环境下的Mysql8 实现主从数据库数据同步方案

    本文记录下通过MySQL Replication在Docker环境下,通过多个容器 实现数据库主从配置. MySQL Replication就不多解释了,简单说就是MySQL非常出色的一个功能,该功能 ...

随机推荐

  1. layui弹出表单提交后,界面model验证部分起作用

    情况1----input属性中type=submit时验证都可以起作用,但是弹出层表单的返回值不能获取,所以用ajax二次提交后会出现重复添加数据的问题 情况2----input属性中type=but ...

  2. UniGUI之UniLabel(31)

    1]改变文本Caption 2]改变颜色字体Font 3]点击访问网址,OnClick事件 1]改变文本Caption unilabel1.Caption:='unilabel1文本'; 2]改变颜色 ...

  3. 【easyui】treegrid逐级加载源码

    当初看这源码的目的是: 1.treegrid是怎么实现逐级加载树结构的. 解: 见demo,主要就是点击节点的时候会请求后台. 2.treegrid加载后,第二次展开节点会不会再次请求后台. 解:第二 ...

  4. Java(二)Arrays工具类

    Arrays是一个专门用于操作数组的工具类,该类位于java.util包中. Arrays的常用方法: 1.排序方法 原型:static void sort(int [] a) 功能:对指定的int型 ...

  5. [Python]爬取首都之窗百姓信件网址id python 2020.2.13

    经人提醒忘记发网址id的爬取过程了, http://www.beijing.gov.cn/hudong/hdjl/com.web.consult.consultDetail.flow?original ...

  6. DSP定点与浮点计算

    在定点DSP芯片中,采用定点数进行数值运算,其操作数一般采用整型数来表示.一个整型数的最大表示范围取决于DSP芯片所给定的字长,一般为16位或24位.显然,字长越长,所能表示的数的范围越大,精度也越高 ...

  7. BZOJ3172&&lg3966 TJOI单词(广义后缀自动机)

    BZOJ3172&&lg3966 TJOI单词(广义后缀自动机) 题面 自己找去 HINT 给出多个文本串,让你查找每个文本串一共出现了多少次,广义后缀自动机建出parent tree ...

  8. 聊聊c#字符串拼接

    字符串对我编程人员来说是字符串时每天见面的常客,你不认识不熟悉他都不得行,字符串的拼接更是家常便饭,那么在实际开发过程中实现字符串的拼接有哪一些方式呢?咱们一起来聊聊,来交流沟通,学习一波.也许你会说 ...

  9. linux--后端项目部署

    nginx + uwsgi + crm + mysql + virtualenv + supervisor项目部署 1.后端整起,用uwsgi启动crm 2.创建一个新的虚拟环境,用于运行crm新业务 ...

  10. Java枚举类型的使用,数值的二进制表示

    一.Java枚举类型的使用 首先请看这段代码: package java上课; public class EnumTest { public static void main(String[] arg ...