Redesign Dockerfile and add .dockerignore

Refs: #5303
Change-Id: I494c2b64cf7230225e45a1028ee69f50612ffffa
diff --git a/.gitignore b/.gitignore
index 724f671..9357dcc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,20 @@
-# Emacs
+# Backup files
 *~
+*.bak
+*.orig
+*.rej
+
+# Waf build system
+/build/
+.waf-*-*/
+.waf3-*-*/
+.lock-waf*
+
+# Compiled python code
+__pycache__/
+*.py[cod]
+
+# Emacs
 \#*\#
 /.emacs.desktop
 /.emacs.desktop.lock
@@ -15,16 +30,6 @@
 .LSOverride
 ._*
 
-# Waf build system
-/build/
-.waf-*-*/
-.waf3-*-*/
-.lock-waf*
-
-# Compiled python code
-__pycache__/
-*.py[cod]
-
 # Other
 /VERSION.info
 /examples/example-trust-anchor.cert