Ubuntu18.04下Docker学习总结

Ubuntu18.04下Docker学习总结,第1张

目录
  • 认识Docker
  • Ubuntu相关基础
    • 1. 手动更改ubuntu下载源
    • 2.更便捷Ubuntu软件源下载速度加速方式(推荐):
    • 3.Ubuntu更改ubuntu语言支持
    • 4.其他
      • 4.1 Ubuntu启动时连按SHift可进入系统选择界面
      • 4.2 ssh的使用
  • Docker
    • 1.安装Docker
    • 2.Docker基础
    • 3.自定义网络
      • 3.1 linux网络基础命令
      • 3.2网络模式
      • 3.3 docker网络模式介绍
      • 3.3 *** 作
      • 3.4 网络连通-------不同子网之间建立连接
    • 4. 例子
      • 4.1 容器创建
  • 一些小知识

认识Docker Ubuntu相关基础 1. 手动更改ubuntu下载源
以下 *** 作是在ubuntu18.04-desktop中进行的,
使用此方式安装docker时会报错若干,不推荐.
  1. 备份原始文件
    sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
  2. 打开文件
    vi /etc/apt/sources.list
  3. 注释原文件内容添加新地址

    #阿里云下载源
    deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

  4. 保存退出:ESC+wq!
  5. 更新源:sudo apt-get update

    更新时的一些报错解决:
    The following packages have unmet dependencies: gsettings-desktop-schemas : Breaks: mutter (< 3.31.4) but 3.28.2-2~ubuntu18.04.1 is to be installed
    解决:sudo apt-get install gsettings-desktop-schemas
    参考:https://www.cnblogs.com/mengw/p/11408118.html

2.更便捷Ubuntu软件源下载速度加速方式(推荐):

https://jingyan.baidu.com/article/6dad507559d7d8a123e36eaa.html

3.Ubuntu更改ubuntu语言支持

Change into Chinese language:
https://blog.csdn.net/smart_ferry/article/details/84186835

4.其他 4.1 Ubuntu启动时连按SHift可进入系统选择界面 4.2 ssh的使用
4.2.1 Ubuntu安装ssh
apt-get install ssh
4.2.2 ssh的使用
用户名@ip地址 -p 开放端口号(该类信息在服务器供应商处查看)
Docker 1.安装Docker

参考如下链接安装即可:
https://www.runoob.com/docker/ubuntu-docker-install.html

2.Docker基础
1.下拉镜像
docker pull python:3.6
2.创建新容器并进入
docker run -d -it --name zhou python:3.6#创建新容器并后台运行
docker run -it --name zhou python:3.6 /bin/bash#创建新容器,直接进行交互
3.删除容器
docker rm $(docker ps -a -q)#删除所有停止的容器
4.docker网络信息查看命令:
docker inspect  容器ID

推荐链接:
https://blog.csdn.net/qq_46181653/article/details/121366952

3.自定义网络 3.1 linux网络基础命令
纯ubuntu系统安装ip命令:apt-get update & apt-get install -y iproute2
查看网络地址信息:ip addr 
3.2网络模式
bridge:桥接(docker默认,推荐)
none:不配置网络
host:和宿主机共享网络
container:容器网络互联(用的少局限大)
3.3 docker网络模式介绍

ip addr
1: lo: 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
6: eth0@if7: mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:ac:11:00:03 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 172.17.0.3/16 brd 172.17.255.255 scope global eth0
valid_lft forever preferred_lft forever

veth-pair技术:一对虚拟设备接口,他们都是成对出现的,一段连着协议,一段彼此相连。


evth-pair充当一个桥梁,连接各种虚拟网络设备的。



docker容器重启后ip会改变,如何解决这个问题?
使用自定义网络技术,即创建自定义subnet

3.3 *** 作
创建子网:
docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet
查看子网信息:
docker network inspect mynet
连接子网:
docker run -d -P --name YourcontainerName --net mynet containerName
移除指定的网络
docker network rm default_network
列所有列表的网络
docker network ls
3.4 网络连通-------不同子网之间建立连接

容器连接网络:docker network connect mynet 待连接容器名
查看自定义网络信息:docker network inspect mynet 
4. 例子 4.1 容器创建

4.1.1 创建mynet网桥

docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet

4.1.2 创建python容器并启动:

docker run  -p 80:80 --name django -it -v /home/zhou/Desktop/my_object:/home --net mynet python:3.8.5 /bin/bash

创建容器后台挂载(会失效):docker run -d -p 80:80 --name django -v /home/zhou/Desktop/my_object:/home --net mynet python:3.8.5 /bin/bash

4.1.3 创建mysql容器并启动:

 docker run -it --name mysql_ -p 3306:3306 -v /home/zhou/Desktop/my_object:/home --net mynet -e MYSQL_ROOT_PASSWORD=zlk10086 -d mysql

参数拓展:
–expose=[]: 开放一个端口或一组端口;

一些小知识
apt-get update:update是更新软件列表
apt-get upgrade:upgrade是更新软件

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/570874.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-09
下一篇 2022-04-09

发表评论

登录后才能评论

评论列表(0条)

保存