首页 > 其他分享 >docker入门

docker入门

时间:2023-12-29 22:56:13浏览次数:38  
标签:容器 入门 sudo apt etc docker Docker

docker入门

官方介绍

https://docs.docker.com/get-started/overview/

Docker 是一个用于开发、发布和运行应用程序的开放平台。 Docker 使您能够将应用程序与基础架构分离,以便 您可以快速交付软件。使用 Docker,您可以管理您的基础架构 以管理应用程序的相同方式。通过利用 Docker 的 用于交付、测试和部署代码的方法,您可以 显著减少编写代码和在生产环境中运行代码之间的延迟。

大概就是在一个相对隔离的环境快速部署应用。

ubuntu安装

https://docs.docker.com/engine/install/ubuntu/

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

# Install Docker
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# run hello-world to verify
sudo docker run hello-world

一些命令

# 以可交互,模拟终端的方式从一个镜像创建一个容器
# -i        可交互
# -t        模拟终端
# --name    起的名字
docker run -it -p 4000:4000 --name testCTFd ec0 /bin/bash

# 启动一个名为forCTFd的容器(可交互方式)
docker start -i forCTFd

# 停止名为forCTFd的容器
docker stop forCTFd

# 从容器创建一个新的镜像,以保存当前配置
docker commit -a "author" -m "description" 21b hello/world:v1

# 删除容器
docker rm 21b

# 删除镜像
docker rmi 21b

# 查看正在运行的容器
docker ps

# 查看所有容器
docker ps -a

# 查看镜像
docker images

# 将容器导出到一个tar文件
docker export 21b -o testCTFd.tar

# 从tar文件恢复一个镜像
cat testCTFd.tar | docker import - test/ubuntu

# 复制容器内文件到本机(文件夹也可以)
docker cp 03091bf3d393:/root/a.txt ./

# 交互方式进入已运行的容器
docker exec -it 24ca03d94e9f /bin/bash

# 容器重命名(a重命名为b)
docker rename a b

# 查看容器配置参数并找出ip地址
docker inspect 2b1 | grep IPAddress

# 从Dockerfile创建镜像
docker build -t hello:v1.1 -f /whatever/Dockerfile

image和container的区别

Image可以理解为一个系统镜像,
Container是Image在运行时的一个状态。

如果拿虚拟机作一个比喻的话,
Image就是关机状态下的磁盘文件,
Container就是虚拟机运行时的磁盘文件,包括内存数据。


2017/9/2

标签:容器,入门,sudo,apt,etc,docker,Docker
From: https://www.cnblogs.com/-rvy-/p/17935805.html

相关文章

  • docker中的mysql时区修改
    永久修改进入容器dockerexec-itmysql5.7bash查看当前时区date-R修改时区cp/usr/share/zoneinfo/PRC/etc/localtime#或者ln-sf/usr/share/zoneinfo/Asia/Shanghai/etc/localtime#退出exit#重启容器生效dockerrestartmysql5.7临时修改-重启失......
  • CENTOS docker拉取私服镜像
     概述docker的应用越来越多,安装部署越来越方便,批量自动化的镜像生成和发布都需要docker镜像的拉取。centos6版本太老,docker的使用过程中问题较多,centos7相对简单容易。本文档主要介绍centos系统安装docker和拉取docker私服镜像的步骤和问题解决。环境dockerregistry:2ce......
  • Python趣味入门11:函数作为参数以及匿名函数
    Python函数本质上是一段代码的集合,扩展对于函数的高级用法,有利于更好的认识Python,函数是Python的核心。本篇扩展了函数的2个应用,一是把函数本身作为参数,二是介绍了匿名函数的应用。1、以函数作为参数:1.1概念Python里可以把函数本身当成是参数,比如Python内置函数map可以通过传......
  • Python趣味入门10:推倒繁琐化烦为简的推导式
    前言《西部世界》的德洛丽丝进入了MAZE迷宫,假设她需要列出一系列的平方数作为密码,来进入迷宫。在以往的代码生成类似的数列需要使用循环语句,写多行语句。Python有了推导式,只需要1句就足够了,下面介绍本篇的主角。本篇的主角是推导式comprehensions(又称解析式),是Python的大杀器之一......
  • docker安装rabbitmq3.11.9镜像集群
    准备3台服务器安装配置镜像集群IP1:192.168.0.1IP2:192.168.0.2IP3:192.168.0.3yuminstall-ylrzsztelnetnciftopunzipyum-utilsepel-releasesystemctlstopfirewalld.service&&systemctldisablefirewalld.serviceyum-config-manager--add-repohttp://mirrors.aliyu......
  • DockerCompose中重启某个服务时提示: (iptables failed: iptables --wait -t nat -A D
    场景DockerCompose修改某个服务的配置(添加或编辑端口号映射)后如何重启单个服务使其生效:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/134666413除了以上重启某个服务的方式外。基于docker-compose的方式,如果只是要单纯的重启某个服务,则可以通过docker-compo......
  • 三位偏序,CDQ分治入门
    (我发现我最近dp没有进展,导致我开始刷水题了。。)cdp分治,我蓝书又又看不懂了所以我还是自己去找题目做的看了看,这个应该才算是真正的入门吧这里先放上一句我觉得非常重要的话吧CDQ分治有一个重要的思想——用一个子问题来计算对另一个子问题的贡献。看到最后我对这句话的理解......
  • ubuntu 安装 docker
    ubuntu安装docker详细步骤ubuntu下自带了docker的库,不需要添加新的源。但是ubuntu自带的docker版本太低,需要先卸载旧的再安装新的。卸载旧版本apt-getremovedockerdocker-enginedocker.iocontainerdrunc安装前提依赖aptupdateapt-getinstallca-certificates......
  • 从0到1快速入门ETLCloud
    一、ETLCloud的介绍ETL是将业务系统的数据经过抽取(Extract)、清洗转换(Transform)之后加载(Load)到数据仓库的过程,目的是将企业中的分散、凌乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。 ETL是BI(Business Intelligence)项目重要的一个环节。 通常情况下,在BI项目中ETL会......
  • 从0到1快速入门ETLCloud
    一、ETLCloud的介绍ETL是将业务系统的数据经过抽取(Extract)、清洗转换(Transform)之后加载(Load)到数据仓库的过程,目的是将企业中的分散、凌乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。 ETL是BI(BusinessIntelligence)项目重要的一个环节。通常情况下,在BI项目中ETL会......