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. github访问过慢

    转:https://baijiahao.baidu.com/s?id=1608100091125662190&wfr=spider&for=pc https://www.cnblogs ...

  2. phpcms v9全站点击量排行代码

    前台: <ul> {pc:content action="sitehits" siteid="1" num="10" order ...

  3. CentOS7安装gotoblas遇到的问题

    1. 错误信息: /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: cannot find -l-l ...

  4. @RequestBody 和 @RequestParam(“test”) 的区别与联系

    @RequestBody @RequestBody主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的):GET方式无请求体,所以使用@RequestBody接收数据时,前端不能使用 ...

  5. Win10安装.net2.0/3.0

    Windows 安装.net2.0/3.0 将下列代码拷到本地bat文件中(bat文件和sxs文件夹同级),下载适用的.net安装包版本后放置到sxs文件夹,用管理员权限执行bat文件即可. @ech ...

  6. vsftp安装及配置

    一.安装Vsftp 1,安装 yum install vsftpd -y

  7. mysql数据库环境配置及部分问题

    亲身经历了MySQL初学者的痛苦,把主要问题和解决方法整理一下. 一.解压版环境配置 1.把压缩包解压到某盘符下. 解压后在类似“E:\mysql-5.7.22-winx64”这个文件夹中可以看到以上 ...

  8. ubuntu---禁止更新内核

    系统内核 4.15.0-29  更新成了 4.15.0-88,降级内核并禁止更新内核 查看已安装内核:dpkg --get-selections |grep linux-image 查看正在使用的内核 ...

  9. 小白的java学习之路 “ 类和对象”

    一.※ 万物皆对象 二.对象的两个特征: 属性:对象具有的各种特征 方法:对象执行的操作 对象:用来描述客观事物的一个实体,由一组属性和方法构成 三.封装: 对象同时具有属性和方法两项特性 对象的属性 ...

  10. Yarn报错:Could not find any valid local directory for nmPrivate/

    原因: yarn.nodemanager.local-dirs和hadoop的hadoop.tmp.dir参数对应文件位置不一致 解决办法: 将hdfs-site.xml中hadoop.tmp.dir ...