工具箱-docker学习笔记(一) 基本操作

如果没有虚拟机的小伙伴(或者想用和我一样搭建虚拟机的小伙伴) 可以参照下面的方式先下载安装好软件,课程中会用到 在同级目录中我放了一个virtualbox.box,课程中也会用到一、下载安装vagrant 01 访问Vagrant官网 https://www.vagrantup.com/02 点击DownloadWindows,MacOS,Linux等​03 选择对应的版本​...
摘要由CSDN通过智能技术生成

Docker 笔记 - Docker官网

一,环境搭建

1 win 10 搭建 vagrant + virtualbox

1.1 下载工具

1.2 准备 centos7 box

1.3 搭建 centos7 环境

1.3.1 新建一个文件夹用于初始化 vagrant

注:目录不能包含中文

1.3.2 添加 .box 文件到 vagrant

$ vagrant box add centos/7 E:/Docker/virtualbox.box

==> box: Box file was not detected as metadata. Adding it directly...

==> box: Adding box 'centos/7' (v0) for provider:

    box: Unpacking necessary files from: file:///E:/Docker/virtualbox.box

    box:

==> box: Successfully added box 'centos/7' (v0) for 'virtualbox'!

 

AQQJE@aqqje MINGW64 /e/Docker

$ vagrant box list

centos/7 (virtualbox, 0)

1.3.3 生成 Vagrantfile 文件

$ vagrant init centos/7

A `Vagrantfile` has been placed in this directory. You are now

ready to `vagrant up` your first virtual environment! Please read

the comments in the Vagrantfile as well as documentation on

`vagrantup.com` for more information on using Vagrant.

1.3.4 配置 Vagrantfile 文件

# -*- mode: ruby -*-# vi: set ft=ruby :

Vagrant.configure("2") do |config|

  config.vm.box = "centos/7"

  config.vm.network "public_network"

  config.vm.provider "virtualbox" do |vb|

vb.memory = "3000"

vb.name = "aqqje"

vb.cpus = 3

  endend

1.3.5 启动 centos/7 虚拟机

$ vagrant up

Bringing machine 'default' up with 'virtualbox' provider...

...

==> default: Rsyncing folder: /cygdrive/e/Docker/ => /vagrant

1.3.6 vagrant基本操作

vagrant ssh          # 连接当前 vagrant 运行的虚拟机

vagrant status       # 查看当前 vagrant 运行的虚拟机

vagrant halt       # 停止当前 vagrant 运行的虚拟机

vagrant destroy    # 删除当前 vagrant 创建的虚拟机

vagrant reload     # 重启当前 vagrant 运行的虚拟机

vagrant ssh-config   # 查看当前 vagrant ssh配置信息

 

 

##### 1.3.7 配置虚拟 ssh 连接

 

 

```bash

# 开启ssh密码连接

vim /etc/ssh/sshd_config

# 设置 passwordAuthentication yes

PasswordAuthentication yes

 

​```bash

[vagrant@localhost ~]$ sudo -i

[root@localhost ~]# vi /etc/ssh/sshd_config

[root@localhost ~]# passwd

Changing password for user root.

New password:

BAD PASSWORD: The password is shorter than 8 characters

Retype new password:

passwd: all authentication tokens updated successfully.

[root@localhost ~]# systemctl restart sshd

[root@localhost ~]# ip ad

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

    inet 127.0.0.1/8 scope host lo

       valid_lft forever preferred_lft forever

    inet6 ::1/128 scope host

       valid_lft forever preferred_lft forever

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

    link/ether 52:54:00:8a:fe:e6 brd ff:ff:ff:ff:ff:ff

    inet 10.0.2.15/24 brd 10.0.2.255 scope global noprefixroute dynamic eth0

       valid_lft 85626sec preferred_lft 85626sec

    inet6 fe80::5054:ff:fe8a:fee6/64 scope link

       valid_lft forever preferred_lft forever

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

    link/ether 08:00:27:6b:95:30 brd ff:ff:ff:ff:ff:ff

    inet 192.168.0.172/24 brd 192.168.0.255 scope global noprefixroute dynamic eth1

       valid_lft 6426sec preferred_lft 6426sec

    inet6 fe80::a00:27ff:fe6b:9530/64 scope link

       valid_lft forever preferred_lft forever

1.3.8 vagrant box 打包分发

$ vagrant package --output sub-centos.box

==> default: Exporting VM...

==> default: Compressing package to: E:/Docker/sub-centos.box

1.3.9 从 vagrant 中移除 .box 文件

$ vagrant box remove centos/7

Removing box 'centos/7' (v0) with provider 'virtualbox'...

 

AQQJE@aqqje MINGW64 /e/Docker

$ vagrant box list

There are no installed boxes! Use `vagrant box add` to add some.

2 使用云服务器

二, 安装Docker - 官网文档

1. 卸载之前的 docker

sudo yum remove docker \

                  docker-client \

                  docker-client-latest \

                  docker-common \

                  docker-latest \

                  docker-latest-logrotate \

                  docker-logrotate \

                  docker-engine

2. 安装依赖

sudo yum install -y yum-utils \

  device-mapper-persistent-data \

  lvm2

3. 配置 docker 仓库

sudo yum-config-manager \

    --add-repo \

    https://download.docker.com/linux/centos/docker-ce.repo

4. 安装 docker

# 默认安装最新版本

sudo yum install docker-ce docker-ce-cli containerd.io

# 查看 docker 历史版本

sudo yum list docker-ce --showduplicates | sort -r

# 安装指定版本: 18.09.1

sudo yum install docker-ce-18.09.1 docker-ce-cli-18.09.1 containerd.io

5. 启动 docker, 并配置开机启动

sudo systemctl start docker && sudo systemctl enable docker

6. 配置加速器 - 阿里镜像加速服务

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

{

  "registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]

}

EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

7. hello world

sudo docker run hello-world

8. docker 基础命令

# 搜索镜像: mysql

docker search mysql

# 安装 mysql

docker pull mysql

# 查看本地镜像

docker images

# 启动镜像: -d 容器在后台运行 -p 容器内部使用的网络端口映射到宿主主机上

docker run -d --name mysql02 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --privileged mysql

# 进入镜像窗口: -i 交互式操作 -t 终端 (docker attach 命令:如果从这个容器退出,会导致容器的停止)

docker exec -it mysql02 /bin/bash

三, Docker Image and Container

1,Image - 官方 image 地址

1.1 使用官方 Dockerfile 文件构建 mysql

  • Dockerfile

FROM debian:stretch-slim

# add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get added

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值