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. ES的性能优化

    ES的性能优化 es在数据量很大的情况下(数十亿级别)如何提高查询效率? 在es里,不要期待着随手调一个参数,就可以万能的应对所有的性能慢的场景.也许有的场景是你换个参数,或者调整一下语法,就可以搞定 ...

  2. python下timer定时器常用的两种实现方法

    方法一,使用线程中现成的:   这种一般比较常用,特别是在线程中的使用方法,下面是一个例子能够很清楚的说明它的具体使用方法: #! /usr/bin/python3 #! -*- conding: u ...

  3. day6 基础总结和编码方式

    # = 赋值 == 比较值是否相等 is 比较内存地址 li1 = [1, 2, 3] li2 = li1 print(li1 is li2) print(id(li1), id(li2)) #数字, ...

  4. LeetCode:27 移除元素

    给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成 ...

  5. 开学第一课Java考试

    package moguiba;import java.text.DecimalFormat;import java.util.Scanner;import moguiba.ScoreInformat ...

  6. Java多线程之synchronized和volatile

    概述 用Java来开发多线程程序变得越来越常见,虽然Java提供了并发包来简化多线程程序的编写,但是我们有必要深入研究一下,才能更好的掌握这块知识. 本文主要对Java提供的底层原语synchroni ...

  7. JAVA将图片(本地或者网络资源)转为Base64字符串,将base64字符串存储为本地图片

    代码如下: package com.futuredata.dataservice.util; import java.io.ByteArrayOutputStream; import java.io. ...

  8. mybatis - 基于拦截器修改执行中的SQL语句

    拦截器介绍 mybatis提供了@Intercepts注解允许开发者对mybatis的执行器Executor进行拦截. Executor接口方法主要有update.query.commit.rollb ...

  9. 自定义结构体 Map

    struct Hashmap{ ,maxe=; ],nxt[maxe+],w[maxe+]; ]; ;;} void Add(int x,int y){son[++E]=y;nxt[E]=lnk[x] ...

  10. 0002 PyCharm设置

    1 设置编码格式 File/Settings/Editor/File Encodings 2 设置字体 File/Settings/Editor/Font 3 鼠标滚轮改变编辑器字体大小 File/S ...