数据库和Docker操作记录

362 阅读2分钟

数据库和Docker操作指南

摘要

前端程序员平时都在忙工作业务,偶尔想搞搞自己的服务器,时间久了经常会忘记数据库的基本操作,所以整理一下基本的操作指令,该文档仅作为个人学习记录。

Mydql 数据库常用指令

指令描述备注
mysql -u root -p连接数据库
create database 数据库名;创建数据库
drop database <数据库名>;删除数据库
use db_name;选择数据库
show databases;查看所有的数据库
status查看数据库状态
show tables;查看数据库中的表
desc table_name查看表结构

Mongoodb 常用指令

指令描述备注
mongo连接数据库
use runoob创建/选择数据库,新创建的数据库,要在里面新建集合,才能show dbs查看到
show dbs查看所有数据库
db.runoob.insert({"name":"菜鸟教程"})插入数据
use runoob && db.dropDatabase()删除数据库
db.createCollection('runoob')创建集合
db.collection.drop()删除集合runoob
db.collection.insert(document)插入文档
db.collection.replace()/save()替换文档
db.collection.insertOne()插入一条数据
db.collection.insertMany()插入多条文档
db.collection.update(, )更新文档
db.collection.remove(,<{justOne: boolean}>)删除文档

Docker 常用指令

dockder 创建容器时可以传递多个参数,扩展额外的功能。比如:通过 docker 的两个参数 -i -t,让 docker 运行的容器实现"对话"的能力

runoob@runoob:~$ docker run -i -t ubuntu:15.10 /bin/bash
root@0123ce188bd8:/#
  • -t: 在新容器内指定一个伪终端或终端。
  • -i: 允许你对容器内的标准输入 (STDIN) 进行交互。
  • -d:启动容器(后台模式)
  • /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash

要退出终端,直接输入 exit:

root@ed09e4490c57:/# exit

容器操作

指令描述备注
docker createCreate a new container
docker run -itd --name ubuntu-test ubuntu运行一个ubuntu容器
docker exec -it ubuntu-test /bin/bash进入容器 在运行的容器中使用命令行docker exec退出时容器不会 停止
docker attach <容器 ID>进入容器docker attach退出容器时,会导致容器的停止。
docker ps查看容器列表并展示运行信息
docker stop停止容器
docker start id/name启动一个已停止的容器
docker restart <容器 ID>重启容器
docker rm <容器 ID>删除容器
docker port <容器 ID>查看容器的端口映射

镜像操作

指令描述备注
docker pull image_name下载镜像
docker images查看docker镜像列表
docker rmi <镜像>删除镜像
docker builder -t test_image .创建一个新的镜像-t :指定要创建的目标镜像名;. :Dockerfile 文件所在目录

容器连接

网络端口映射

容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -P 或 -p 参数来指定端口映射。

  • -P :是容器内部端口随机映射到主机的高端口。
  • -p : 是容器内部端口绑定到指定的主机端口。
runoob@runoob:~$ docker run -d -p 127.0.0.1:5001:5000 training/webapp python app.py

注意:冒号左边是 主机的端口,右边是 容器的端口号

这样我们就可以通过访问 127.0.0.1:5001 来访问容器的 5000 端口。

例子

使用 docker nginx发布一个静态页面:

root@Zhangjunrui:~/lib/www# docker run -p 8000:80 -v $PWD:/usr/share/nginx/html nginx

以上命令行功能如下:

  • 启动一个运行nginx的容器
  • 将外部主机8000端口 映射到docker容器的默认端口80上
  • 将容器的nginx默认路径,连接到外部主机的 $PWD运行目录下

工作步骤:

  1. 浏览器访问http://www.***.com:8000
  2. docker nginx 80端口
  3. docker nginx/静态资源文件路径 映射到外部主机路径
  4. 浏览器响应