服务

  • 启动docker
systemctl start docker
  • 重启docker
systemctl restart docker
  • 停止docker
systemctl stop docker.socke
systemctl stop docker
  • 如果linux重启需要重启docker服务
systemctl daemon-reload
systemctl restart docker.service
  • 设置中国镜像
# vi /etc/docker/daemon.json

{
"registry-mirrors": [
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn",
"https://registry.docker-cn.com",
"http://520emlt4.mirror.aliyuncs.com"
]
} # systemctl daemon-reload
# systemctl restart docker

镜像

  • 查看镜像
docker images
  • 删除镜像
docker rmi IMAGE ID

*ps: 删除镜像(需要先删除容器)

docker ps -a  # 查看容器
docker stop <#id> # 停止一个或多个容器
docker rm <#id> # 删除一个或多个容器
docker image ls -a # 查看镜像
docker rmi <#id> # 删除一个或多个镜像
  • 拉取镜像
docker pull jenkins/jenkins
  • 运行镜像
docker run -d -uroot -p 8888:8080 -p 50000:50000 --name jenkins -v /home/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime jenkins/jenkins
命令 描述
-d 后台运行容器,并返回容器ID
-uroot 使用 root 身份进入容器,推荐加上,避免容器内执行某些命令时报权限错误
-p 9095:8080 将容器内8080端口映射至宿主机9095端口,这个是访问jenkins的端口
-p 50000:50000 将容器内50000端口映射至宿主机50000端口
--name jenkins 设置容器名称为jenkins
-v /home/jenkins_home:/var/jenkins_home :/var/jenkins_home目录为容器jenkins工作目录,我们将硬盘上的一个目录挂载到这个位置,方便后续更新镜像后继续使用原来的工作目录
-v /etc/localtime:/etc/localtime 让容器使用和服务器同样的时间设置
jenkins/jenkins 镜像的名称,这里也可以写镜像ID
  • 查看日志
docker logs jenkins

容器

  • 查看容器
  • 此时的状态有 Up About / Exited
docker ps -a
  • 删除容器
  • 将 Exited 状态的容器删除
docker rm 容器ID
  • 启动/重启/停止容器
docker start 容器ID
docker restart 容器ID
docker stop 容器ID
  • 进入/退出容器
docker exec -it 容器ID bash
exit
docker restart 容器ID

查看docker中的xxx容器版本

  • 拉取镜像
docker pull redis

  • 运行镜像
docker run -p 6379:6379 -v $PWD/data:/data  -d redis:latest redis-server --appendonly yes --requirepass 123456
-p 6379:6379 : 将容器的6379端口映射到主机的6379端口
-v $PWD/data:/data : 将主机中当前目录下的data挂载到容器的/data
redis-server --appendonly yes : 在容器执行redis-server启动命令,并打开redis持久化配置
  • 以查看redis版本为例
docker exec -it edfb37d82fde redis-server -v



docker-compose

这里以启动一个jenkins为例

  • 配置
mkdir -p /usr/local/jenkins
cd /usr/local/jenkins
vim docker-compose.yml # docker run -p 8080:8080 -p 50000:50000 -v jenkins_home:/var/jenkins_home jenkins/jenkins:lts-jdk11 jenkins
restart: always
image: jenkins/jenkins:2.204.5
ports:
- "8080:8080"
- "50000:50000"
volumes:
- ./data:/var/jenkins_hom
  • 启动
cd /usr/local/jenkin
mkdir -p data # 注意如果重装jenkins,先删除这个文件夹并重新生成
chmod -R 777 data # yml中的 volumes对应的映射目录 ./dat
systemctl restart docker # 如果报错每次修改请重启docker
docker-compose up -d # 启动jenkins
docker-compose ps # state的状态为up即启动成功
docker-compose logs -f # 实时查看启动情况,注意记录初始密码

常用程序看装

mysql

官网

安装

  • 安装钱查看系统是否安装lnmp,停止其中的mysql
lnmp status
lnmp mysql stop

  • 拉取mysqlDdocker镜像

  • 运行容器
docker run -itd --name mysql5739 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql daff57b7d2d1/daff57b7d2d1

【Docker】基本使用的更多相关文章

  1. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  2. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

    首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

  3. Docker 第一篇--初识docker

    已经多年不写博客, 看完<晓松奇谈>最后一期猛然觉醒, 决定仔细梳理下自己这几年的知识脉络. 既然决定写, 那么首先就从最近2年热门的开源项目Docker开始.Docker 这两年在国内很 ...

  4. 在docker中运行ASP.NET Core Web API应用程序(附AWS Windows Server 2016 widt Container实战案例)

    环境准备 1.亚马逊EC2 Windows Server 2016 with Container 2.Visual Studio 2015 Enterprise(Profresianal要装Updat ...

  5. docker for mac 学习记录

    docker基本命令 docker run -d -p 80:80 --name webserver nginx 运行容器并起别名 docker ps 展示目前启动的容器 docker ps -a 展 ...

  6. scrapy爬虫docker部署

    spider_docker 接我上篇博客,为爬虫引用创建container,包括的模块:scrapy, mongo, celery, rabbitmq,连接https://github.com/Liu ...

  7. [原][Docker]特性与原理解析

    Docker特性与原理解析 文章假设你已经熟悉了Docker的基本命令和基本知识 首先看看Docker提供了哪些特性: 交互式Shell:Docker可以分配一个虚拟终端并关联到任何容器的标准输入上, ...

  8. 开发者的利器:Docker 理解与使用

    困扰写代码的机器难免会被我们安装上各种各样的开发工具.语言运行环境和引用库等一大堆的东西,长久以来不仅机器乱七八糟,而且有些相同的软件还有可能会安装不同的版本,这样又会导致一个项目正常运行了,却不小心 ...

  9. 使用python自动生成docker nginx反向代理配置

    由于在测试环境上用docker部署了多个应用,而且他们的端口有的相同,有的又不相同,数量也比较多,在使用jenkins发版本的时候,不好配置,于是想要写一个脚本,能在docker 容器创建.停止的时候 ...

  10. 微服务与Docker介绍

    什么是微服务 微服务应用的一个最大的优点是,它们往往比传统的应用程序更有效地利用计算资源.这是因为它们通过扩展组件来处理功能瓶颈问题.这样一来,开发人员只需要为额外的组件部署计算资源,而不需要部署一个 ...

随机推荐

  1. win系统airtest+pytest-xdist服务器分布式运行。

    1.准备至少两台服务器,集群全部是局域网,(启动脚本的时候可以使用外网ip). 2.输出的报告地址,需要把文件夹设置成共享文件夹,(连接的时候使用内外ip). 启动脚本文件 import os, da ...

  2. 关于Java中数组的简单使用

    关于java中数组的简单使用--继java环境配置后的第二篇学习笔记 近期在学习Java的过程中学到了数组的部分,至于为什么我会到数组才来写这个,主要是数组这一章节的内容感觉还是与之前学的C里面的数组 ...

  3. 关于.NET CORE 的 swagger 分组简单使用

    在避免swagger接口过多时,可以使用分组进行功能区分 简单三部曲 1.添加分组和级别名称 services.AddSwaggerGen(c => { #region swagger分组 c. ...

  4. Spring @aspect

    在 开发过程中,需要对每个 方法 执行时 进行日志 记录, 故而 整理一下, 有关 AOP 的 相关 知识点. 1. 切面类: @Aspect :   定义切面类, 加上 @Aspect,@Compo ...

  5. Spring 自定义注解 操作日志

    1.自定义注解 package com.jay.demo3.aop1.myannotation;       import java.lang.annotation.Documented;   imp ...

  6. CSDN上书签迁移

    title: CSDN上书签迁移 date: 2020-11-01 16:34:30 img: /photos/2020.6.03_15/2020_06_11_cover.jpg summary: C ...

  7. 26_自定义Loader

    自定义Loader loader就是对模块的源代码进行处理(转换),如css-loader.style-loader等 在上一篇的源代码中我们已经知道了loader是在runLoaders才会去使用l ...

  8. oracle 索引操作

    1 查询表中所有的索引 -- 固定写法"tb_user"(注意大小写)为表名 select * from user_indexes where table_name='tb_use ...

  9. 成品直播源码推荐,java 实现邮件服务

    成品直播源码推荐,java 实现邮件服务 1. 引入maven 依赖  <!--邮件服务--><dependency>   <groupId>org.springf ...

  10. Node.js 源码解读 EventLoop

    之前断断续续开发过一些 Node.js 的项目,但只仅限于使用它实现一些功能,没有过多对底层深入的研究.现在因为公司大前端组内的服务端渲染直出.BFF(Backend For Frontend) 等需 ...