0% found this document useful (0 votes)
30 views

Download ebooks file (Ebook) Docker containers build and deploy with Kubernetes, Flannel, Cockpit, and Atomic by Henry, William;Negus, Christopher ISBN 9780134136561, 9780312014117, 9781118999875, 9782147483649, 013413656X, 0312014112, 1118999878, 2147483648 all chapters

The document provides information about various eBooks available for download, including titles related to Docker, Kubernetes, and mathematics. It highlights the features of eBooks in different formats (PDF, ePub, MOBI) and offers links to purchase or download specific titles. Additionally, it includes details about the content and structure of the book 'Docker Containers Build and Deploy with Kubernetes, Flannel, Cockpit, and Atomic' by Christopher Negus and William Henry.

Uploaded by

krestmaule0z
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views

Download ebooks file (Ebook) Docker containers build and deploy with Kubernetes, Flannel, Cockpit, and Atomic by Henry, William;Negus, Christopher ISBN 9780134136561, 9780312014117, 9781118999875, 9782147483649, 013413656X, 0312014112, 1118999878, 2147483648 all chapters

The document provides information about various eBooks available for download, including titles related to Docker, Kubernetes, and mathematics. It highlights the features of eBooks in different formats (PDF, ePub, MOBI) and offers links to purchase or download specific titles. Additionally, it includes details about the content and structure of the book 'Docker Containers Build and Deploy with Kubernetes, Flannel, Cockpit, and Atomic' by Christopher Negus and William Henry.

Uploaded by

krestmaule0z
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 65

Download the Full Ebook and Access More Features - ebooknice.

com

(Ebook) Docker containers build and deploy with


Kubernetes, Flannel, Cockpit, and Atomic by Henry,
William;Negus, Christopher ISBN 9780134136561,
9780312014117, 9781118999875, 9782147483649,
013413656X, 0312014112, 1118999878, 2147483648
https://ebooknice.com/product/docker-containers-build-and-
deploy-with-kubernetes-flannel-cockpit-and-atomic-11870004

OR CLICK HERE

DOWLOAD EBOOK

Download more ebook instantly today at https://ebooknice.com


Instant digital products (PDF, ePub, MOBI) ready for you
Download now and discover formats that fit your needs...

Start reading on any device today!

(Ebook) Docker containers build and deploy with Kubernetes, Flannel, Cockpit, and
Atomic by Henry, William;Negus, Christopher ISBN 9780134136561, 9780312014117,
9781118999875, 9782147483649, 013413656X, 0312014112, 1118999878, 2147483648

https://ebooknice.com/product/docker-containers-build-and-deploy-with-
kubernetes-flannel-cockpit-and-atomic-11870004

ebooknice.com

(Ebook) Matematik 5000+ Kurs 2c Lärobok by Lena Alfredsson, Hans Heikne, Sanna
Bodemyr ISBN 9789127456600, 9127456609

https://ebooknice.com/product/matematik-5000-kurs-2c-larobok-23848312

ebooknice.com

(Ebook) SAT II Success MATH 1C and 2C 2002 (Peterson's SAT II Success) by Peterson's
ISBN 9780768906677, 0768906679

https://ebooknice.com/product/sat-ii-success-math-1c-and-2c-2002-peterson-s-sat-
ii-success-1722018

ebooknice.com

(Ebook) Master SAT II Math 1c and 2c 4th ed (Arco Master the SAT Subject Test: Math
Levels 1 & 2) by Arco ISBN 9780768923049, 0768923042

https://ebooknice.com/product/master-sat-ii-math-1c-and-2c-4th-ed-arco-master-
the-sat-subject-test-math-levels-1-2-2326094

ebooknice.com
(Ebook) Cambridge IGCSE and O Level History Workbook 2C - Depth Study: the United
States, 1919-41 2nd Edition by Benjamin Harrison ISBN 9781398375147, 9781398375048,
1398375144, 1398375047

https://ebooknice.com/product/cambridge-igcse-and-o-level-history-
workbook-2c-depth-study-the-united-states-1919-41-2nd-edition-53538044

ebooknice.com

(Ebook) Docker containers build and deploy with Kubernetes, Flannel, Cockpit, and
Atomic by Henry, William;Negus, Christopher ISBN 9780134136561, 013413656X

https://ebooknice.com/product/docker-containers-build-and-deploy-with-
kubernetes-flannel-cockpit-and-atomic-11870006

ebooknice.com

(Ebook) Linux Bible, 9th Edition by Christopher Negus ISBN 9781118999875, 1118999878

https://ebooknice.com/product/linux-bible-9th-edition-5473906

ebooknice.com

(Ebook) Linux Bible by Christopher Negus ISBN 9781118999875, 9781118999899,


1118999878, 1118999894

https://ebooknice.com/product/linux-bible-5152126

ebooknice.com

(Ebook) Cracking Containers With Docker and Kubernetes: The definitive guide to
Docker, Kubernetes, and the Container Ecosystem across Cloud and on-premises by
Nisarg Vasavada, Dhwani Sametriya ISBN 9789391030872, 9391030874

https://ebooknice.com/product/cracking-containers-with-docker-and-kubernetes-
the-definitive-guide-to-docker-kubernetes-and-the-container-ecosystem-across-
cloud-and-on-premises-44567160

ebooknice.com
About This E-Book
EPUB is an open, industry-standard format for e-books. However,
support for EPUB and its many features varies across reading
devices and applications. Use your device or app settings to
customize the presentation to your liking. Settings that you can
customize often include font, font size, single or double column,
landscape or portrait mode, and figures that you can click or tap to
enlarge. For additional information about the settings and features
on your reading device or app, visit the device manufacturer’s Web
site.
Many titles include programming code or configuration examples.
To optimize the presentation of these elements, view the e-book in
single-column, landscape mode and adjust the font size to the
smallest setting. In addition to presenting code and configurations in
the reflowable text format, we have included images of the code
that mimic the presentation found in the print book; therefore,
where the reflowable format may compromise the presentation of
the code listing, you will see a “Click here to view code image” link.
Click the link to view the print-fidelity code image. To return to the
previous page viewed, click the Back button on your device or app.
Docker Containers
Build and Deploy with Kubernetes, Flannel,
Cockpit, and Atomic

Christopher Negus
with William Henry
Many of the designations used by manufacturers and sellers to
distinguish their products are claimed as trademarks. Where those
designations appear in this book, and the publisher was aware of a
trademark claim, the designations have been printed with initial
capital letters or in all capitals.
The author and publisher have taken care in the preparation of this
book, but make no expressed or implied warranty of any kind and
assume no responsibility for errors or omissions. No liability is
assumed for incidental or consequential damages in connection with
or arising out of the use of the information or programs contained
herein.
For information about buying this title in bulk quantities, or for
special sales opportunities (which may include electronic versions;
custom cover designs; and content particular to your business,
training goals, marketing focus, or branding interests), please
contact our corporate sales department at
[email protected] or (800) 382-3419.
For government sales inquiries, please contact
[email protected].
For questions about sales outside the U.S., please contact
[email protected].
Visit us on the Web: informit.com/ph
Library of Congress Control Number: 2015948006
Copyright © 2016 Pearson Education, Inc.
All rights reserved. Printed in the United States of America. This
publication is protected by copyright, and permission must be
obtained from the publisher prior to any prohibited reproduction,
storage in a retrieval system, or transmission in any form or by any
means, electronic, mechanical, photocopying, recording, or likewise.
To obtain permission to use material from this work, please submit a
written request to Pearson Education, Inc., Permissions Department,
200 Old Tappan Road, Old Tappan, New Jersey 07675, or you may
fax your request to (201) 236-3290.
ISBN-13: 978-0-134-13656-1
ISBN-10: 0-134-13656-X
Text printed in the United States on recycled paper at RR Donnelley
in Crawfordsville, Indiana.
First printing: December 2015
As always, I dedicate this book to my wife, Sheree.
—Christopher Negus
Contents
Preface
Acknowledgments
About the Author
Part I Getting Going with Containers
Chapter 1 Containerizing Applications with Docker
Understanding Pros and Cons of Containerizing Applications
...An Application Running Directly on a Host Computer
...An Application Running Directly within a Virtual Machine
Understanding the Upside of Containers
Understanding Challenges of Containerizing Applications
Understanding What Makes Up Docker
The Docker Project
The Docker Hub Registry
Docker Images and Containers
The docker Command
Approaching Containers
Summary
Chapter 2 Setting Up a Container Run-Time Environment
Configuring a Standard Linux System for Docker
Configuring Ubuntu for Docker
Configuring Fedora for Docker
Configuring Red Hat Enterprise Linux for Docker
Configuring Other Operating Systems for Docker
Configuring a Container-Style Linux System for Docker
Configuring an Atomic Host for Docker
Configuring CoreOS for Docker
Summary
Chapter 3 Setting Up a Private Docker Registry
Getting and Starting a Private Docker Registry
Setting Up a Docker Registry in Fedora
Setting Up a Docker Registry in Ubuntu
Configuring a Private Docker Registry
Configuring the docker-registry Package
Configuring the registry Container
Understanding the Docker Image Namespace
Summary
Part II Working with Individual Containers
Chapter 4 Running Container Images
Running Container Images Interactively
Starting an Interactive Bash Shell
Playing Some Character-Based Games
Running Administrative Commands Inside a Container
Running Containerized Services
Running a Containerized Web Server
Limiting Resources When Running Services in Containers
Running Privileged Containers
Summary
Chapter 5 Finding, Pulling, Saving, and Loading Container
Images
Searching for Images
Searching for Images with the docker Command
Searching for Images on Docker Hub
Searching Other Repositories for Images
Pulling Images from Registries
Saving and Loading Images
Summary
Chapter 6 Tagging Images
Assigning Names to Images
Assigning Tags to Images
Assigning Repository Names to Images
Attaching a User Name to an Image
Attaching a Repository Name to an Image
Summary
Chapter 7 Investigating Containers
Inspecting Images and Containers
Inspecting an Image
Inspecting Base Images with docker inspect
Inspecting Application Images with docker inspect
Looking at the History of an Image
Inspecting Running Containers
Start a Container to Inspect
Inspect an Entire Container Configuration
Inspect Individual Container Attributes
Finding More Ways to Look into Containers
Using docker top to See Container Processes
Using docker attach to Interact with a Service Inside a
Container
Using docker exec to Start a New Process in a Running
Container
Using docker logs to See Container Process Output
Using docker diff to See How a Container Has Changed
Using docker cp to Copy Files from a Container
Summary
Chapter 8 Starting, Stopping, and Restarting Containers
Stopping and Starting a Container
Stopping and Starting a Detached Container
Starting and Stopping an Interactive Container
Restarting a Container
Sending Signals to a Container
Pausing and Unpausing Containers
Waiting for a Container’s Exit Code
Renaming a Container
Creating a Container
Summary
Chapter 9 Configuring Container Storage
Managing Storage for a Container
Using Volumes from the Host
Data Volume Container
Write-Protecting a Bind Mount
Mounting Devices
Mounting Sockets
Storage Strategies for the Docker Host
Attaching External Storage to a Docker Host
Summary
Chapter 10 Configuring Container Networking
Expose Ports to Other Containers
Map Ports Outside the Host
Map a Port from Linked Containers
Connect Containers on Different Hosts
Alternatives to the docker0 Bridge
Changing Network Mode for a Container
Examining Network Options
Changing the Docker Network Bridge
Summary
Chapter 11 Cleaning Up Containers
Making Space for Images and Containers
Removing Images
Removing Individual Images
Removing Multiple Images
Removing Containers
Removing Individual Containers
Removing Multiple Containers
Cleaning Up and Saving Containers
Cleaning Up and Saving an Ubuntu Container
Cleaning Up and Saving a Fedora Container
Summary
Chapter 12 Building Docker Images
Doing a Simple docker build
Setting a Command to Execute from a Dockerfile
Using the CMD Instruction
Using the ENTRYPOINT Instruction
Using the RUN Instruction
Adding Files to an Image from a Dockerfile
Exposing Ports from an Image within a Dockerfile
Assigning Environment Variables in a Dockerfile
Assigning Labels in a Dockerfile
Using Other docker build Command Options
Tips for Building Containers
Clean Up the Image
Keep Build Directory Small
Keep Containers Simple
Manage How Caching Is Done
Summary
Part III Running Containers in Cloud Environments
Chapter 13 Using Super Privileged Containers
Using Super Privileged Containers in Atomic Host
Understanding Super Privileged Containers
Opening Privileges to the Host
Accessing the Host Process Table
Accessing Host Network Interfaces
Accessing Host Inter-Process Communications
Accessing Host File Systems
Preparing to Use Super Privileged Containers
Using the atomic Command
Installing an SPC Image with atomic
Getting Information about an SPC Image with atomic
Running an SPC Image with atomic
Stopping and Restarting an SPC with atomic
Updating an SPC Image
Uninstalling an SPC Image
Trying Some SPCs
Running the RHEL Tools SPC
Running the Logging (rsyslog) SPC
Running the System Monitor (sadc) SPC
Summary
Chapter 14 Managing Containers in the Cloud with Cockpit
Understanding Cockpit
Starting with Cockpit
Adding Servers into Cockpit
Working with Containers from Cockpit
Adding Container Images to Cockpit
Running Images from Cockpit
Working with Network Interfaces from Cockpit
Configuring Storage from Cockpit
Doing Other Administrative Tasks in Cockpit
Managing Administrator Accounts in Cockpit
Open a Terminal in Cockpit
Summary
Part IV Managing Multiple Containers
Chapter 15 Orchestrating Containers with Kubernetes
Understanding Kubernetes
Starting with Kubernetes
Setting Up an All-in-One Kubernetes Configuration
Installing and Starting Up Kubernetes
Starting Up a Pod in Kubernetes
Working with Kubernetes
Summary
Chapter 16 Creating a Kubernetes Cluster
Understanding Advanced Kubernetes Features
Setting Up a Kubernetes Cluster
Step 1: Install Linux
Step 2: Set Up Kubernetes Master
Step 3: Set Up Kubernetes Nodes
Step 4: Set Up Networking with Flannel
Starting Up Pods in a Kubernetes Cluster
Deleting Replication Controllers, Services, and Pods
Summary
Part V Developing Containers
Chapter 17 Developing Docker Containers
Setting Up for Container Development
Choosing a Container Development Environment for Red Hat
Systems
Container Development Environments from Docker
Using Good Development Practices
Gathering or Excluding Files for a Build
Taking Advantage of Layers
Managing Software Packages in a Build
Learning More about Building Containers
Summary
Chapter 18 Exploring Sample Dockerfile Files
Examining Dockerfiles for Official Docker Images
Viewing a CentOS Dockerfile
Viewing a Busybox Dockerfile
Examining Dockerfiles from Open Source Projects
Viewing a WordPress Dockerfile
Viewing the MySQL Dockerfile
Examining Dockerfiles for Desktop and Personal Use
Viewing a Chrome Dockerfile
Viewing a Firefox Dockerfile
Summary
Index
Preface
Docker is a containerization technology at the center of a new wave
for building, packaging, and deploying applications. It has the
potential to impact every aspect of computing, from the application
development process to how applications are deployed and scaled
up and out across massive data centers.
Despite its great popularity, Docker is still a fairly new project,
with many people still not really knowing exactly what Docker is. If
you are one of those people, this book can help you take that first
step, while also opening your eyes to the huge potential that
containerization promises for you down the road. My goals for
leading you into the world of containerization with this book can be
summed up in these ways:
Hands-on learning: I often say this in my books, but I
believe that the best way to learn how technology works is to
get it and use it. To that end, I let you choose from among
several popular Linux systems, show you how to install Docker
on the one you choose, and provide working examples of using
Docker for everything from running a simple container to
building and managing your own container images. That
learning then extends into tools and techniques for
orchestrating and managing containers.
How Docker can benefit you: I explain the benefits of
creating and running applications in containers, instead of
installing software packages (in formats such as RPM or Deb)
and running uncontained applications directly from your hard
disk. Beyond running applications, I also describe how
containerization can benefit software developers and system
administrators.
Essential qualities of Docker: I describe how Docker uses
technologies such as Linux Containers (LXC) to keep containers
separate from other applications running on a host computer or
selectively tap into the host system. These qualities include
how Docker uses name spaces, metadata, and separate file
systems to both manage and secure containerized applications.
To get started, you don’t need to know anything about Docker or
containerization; you can treat this book as your introduction to
Docker. However, this book is also intended to offer an entry into
more advanced Docker-related topics, such as orchestration and
container development.
As you progress through the book, you see specific ways to run
containers, investigate them, stop and start them, save them, and
generally manage them. As you begin creating your own containers,
I discuss techniques to help you make container images that build
and run efficiently. I even step you through build files (which are
called Dockerfiles) that others have created to make their own
containers.
A knowledge of Linux Containers in general, or Docker containers
specifically, is not needed to start using this book. That said,
however, there are other technologies you will use both within your
Docker containers and outside those containers to work with them.
Understanding some of those technologies will make your
experience with Docker that much more fruitful.

Knowledge to Help You with Docker


To get the most out of working with Docker containers, it helps to
know something about the operating environment in which Docker
will be running. Docker is built on Linux technology and is specifically
integrated with advanced features, including Linux Containers (LXC)
for managing Linux name spaces and Cgroups for managing
container access to system resources (such as CPU and memory).
Even your most basic interactions with Docker containers rely on
underlying Linux technologies. You may have heard that you can run
Docker on your Windows or Mac systems. But adding Docker to
those systems always relies on your adding a Linux virtual machine.
In other words, there are no Docker containers without Linux.
Likewise, each container itself is typically built from a base image
created from a specific Linux distribution.
So if you have no experience working with Linux systems, you
might find it useful to learn about some of the following aspects of
Linux and related technologies:
Command shell: There are graphical interfaces available for
working with Docker. However, most of the examples of Docker
in this book are done from a Linux command line shell.
Knowing how to get around in a Linux shell makes it much
more efficient to work with Docker.
Software packages: Docker is itself a mechanism for
delivering software packaged and delivered together as a
bundled application. To build the container images themselves,
however, most Docker base images are set up to allow you to
install software packages from the specific Linux distribution on
which they were based.
So, for example, for an Ubuntu base image, you should
understand how to install Deb packages with tools such as apt-
get. For Fedora, Red Hat Enterprise Linux, or CentOS Docker
images, the yum, dnf, and rpm commands are useful. When
you use these base images to build your own Docker
containers, those images are usually enabled to automatically
grab the packages you request from online software
repositories. Understanding how to get and install packages in
your chosen Linux distribution is important for your success
with Docker.
File ownership and permissions: Every file in a Linux
system, as well as within a container, is owned by a particular
user and group and has certain permissions set to allow access
to those files. At times, you want to grant access to files and
directories (folders) from the host within the container. Some of
those might be special files, such as devices or sockets, that
the application needs to run. Processes also run as a particular
user. Understanding how those permissions work can be critical
to getting a container working properly.
I mentioned only a few of the more obvious features you need to
know about to work effectively with Docker containers. You will run
into many other Linux-related features as you continue to explore
how to make the best use of the Docker containers you use and
create yourself.
If you are not familiar with Linux, I strongly recommend you take
a class or get a book that gives you at least the basics of Linux to
help you get going with Docker containers. My humble suggestion
would be to pick up the Linux Bible, Ninth Edition, written by this
author (http://www.wiley.com/WileyCDA/WileyTitle/productCd-
1118999878.html). It will not only help you specifically with the
technology you need to build Docker containers, but will also help
you to generally work in a Linux environment as you develop Docker
container images.

What This Book Covers


This book is meant to be used from beginning to end by someone
just starting up with Docker containers. Later, it can serve as
reference material to remind you of different options and features
associated with Docker containers. The book is organized into five
parts.
Part I: Getting Going with Containers
In Part I, you learn what you need to know to start working with
Docker containers. Chapter 1, “Containerizing Applications with
Docker,” describes what containers are and how they differ from
applications that are not contained. In Chapter 2, “Setting Up a
Container Run-Time Environment,” you learn how to install Docker
on different general-purpose Linux systems, such as Fedora and
Ubuntu, as well as how to install Docker on specialized container-
oriented Linux systems, such as CoreOS and Project Atomic. In
Chapter 3, “Setting Up a Private Docker Registry,” we complete a
basic container setup by showing you how to configure a private
Docker registry to hold your own Docker images.

Part II: Working with Individual Containers


Most of the coverage in this part relates to using the docker
command to work directly with individual containers. In Chapter 4,
“Running Container Images,” I show you how to run your first
container images. To help you find and get container images,
Chapter 5, “Finding, Pulling, Saving, and Loading Container Images,”
describes how to search for container images from the Docker
registry and then pull the image you want, save it to a file, and load
it into another Docker system.
In Chapter 6, “Tagging Images,” you learn how to tag images, to
better identify what the image contains and to use that information
to push images to registries. In Chapter 7, “Investigating
Containers,” I show you how to look inside a Docker container or
container image to see the details of how that container or image
works. In Chapter 8, “Starting, Stopping, and Restarting Containers,”
you learn just that—how to stop, start, and restart containers.
In Chapter 9, “Configuring Container Storage,” you learn how to
configure storage, primarily by mounting directories from the host
inside your containers. To learn how to configure networking for
containers, Chapter 10, “Configuring Container Networking,”
describes how to configure both the default networking used (or not
used) by the Docker service in general, as well as ways someone
running containers can set network interfaces for individual
containers.
Docker caches a lot of data, for possible reuse. In Chapter 11,
“Cleaning Up Containers,” I show you how to clean out cached data
left behind when you created or ran Docker images. In Chapter 12,
“Building Docker Images,” you learn how to build your own Docker
containers, including how to build containers that build and run
efficiently.

Part III: Running Containers in Cloud


Environments
In Chapter 13, “Using Super Privileged Containers,” I describe how
to run what are referred to as super privileged containers (SPCs). To
illustrate how SPCs work, I show you how you can get several
images that can perform different administrative tasks on an RHEL
Atomic system. In Chapter 14, “Managing Containers in the Cloud
with Cockpit,” I describe how to manage containers across multiple
hosts in your cloud or local environment using the Cockpit web-
based container management tool.

Part IV: Managing Multiple Containers


In this part, I get into the area of orchestration. For Chapter 15,
“Orchestrating Containers with Kubernetes,” I describe how to use
Kubernetes master and node services all on one system to be able to
try out Kubernetes. In Chapter 16, “Creating a Kubernetes Cluster,” I
go beyond the all-in-one Kubernetes system to describe how to set
up a Kubernetes cluster. With that cluster in place, you can deploy
applications in container pods to be managed on different node
computers from the master computer.
Part V: Developing Containers
In the short time that Docker has been around, techniques have
already been developed to make building containers more efficient.
In Chapter 17, “Developing Docker Containers,” I describe some tips
and a few tricks for developing Docker containers. Finally, in Chapter
18, “Exploring Sample Dockerfile Files,” I show you various
Dockerfile files I have come across to illustrate what different people
have done to overcome obstacles to building their own containers.
So if you are ready now, step right up and start reading Chapter 1.
I hope you enjoy the book!
Acknowledgments
The help I have had producing this book has been extraordinary. In
my day job, I have the pleasure of working directly with people at
Red Hat who take the fine work being done on projects like Docker,
Kubernetes, and Atomic and extend and integrate those projects
together into operating systems that are ready for the most stringent
enterprise environments. So, in general, I want to thank developers,
testers, and other writers on the Red Hat Enterprise Linux Atomic,
OpenShift, and Linux container teams for helping me learn on a daily
basis what it takes to make Linux Containers ready for the
enterprise.
As for having a direct impact on the book, there are a few people
from Red Hat I want to call out individually. First, William Henry
wrote two chapters in this book on storage and networking. I was
fortunate that he was available to write those critical chapters.
Beyond his work here, William has made significant contributions to
Docker-related projects. In fact, William wrote dozens of docker
command man pages that are delivered with the Docker software
itself. Having William around to participate in helping develop the
content of the book was priceless as well.
Another important contributor to this book from Red Hat is Scott
Collier. Scott’s public contributions to the general knowledge about
Docker have included blogs on setting up Docker and Kubernetes, as
well as sharing many sample Dockerfiles through the Fedora Cloud
initiative. For this book, Scott was generous with his time, helping
me sort through technology and examples illustrated throughout the
book.
Because I wrote this book outside of work hours (which is why it
took me longer than I had hoped), I often relied on interactions with
my publisher (Pearson) during evenings and weekends. So, thanks
to editors Chris Zahn and Elaine Wiley for reviewing my content,
occasionally responding on Sunday nights, and compressing their
schedules to help me meet mine. Also from Pearson, my dear friend
Debra Williams Cauley, who developed this project with me, has
shown extraordinary patience as I sought to balance a tight schedule
with my desire to take the time to write the exact book I wanted to
write.
Finally, I’d like to thank my family. When someone writes a book
he must almost, by necessity, neglect his family for some amount of
time. I’m so proud of you all. Despite my drifting off to write, my son
Seth managed to do a great imitation of Zac Efron in High School
Musical by having the lead in his school play while also playing on
his high school soccer team. My son Caleb found his niche, settling
in on his little organic farm in Maine. And my wife, Sheree, continues
to amaze younger generations with her fitness and Spartan runs.
Your love and support are what keeps me going.
About the Author
Christopher Negus is a bestselling author of Linux books, a
certified Linux instructor and examiner, Red Hat Certified Architect,
and principal technical writer for Red Hat. At the moment, projects
Chris is working on include Red Hat OpenStack Platform High
Availability, Red Hat Enterprise Linux Atomic Enterprise, Kubernetes,
and Linux Containers in Docker format.
As an author, Chris has written dozens of books about Linux and
open source software. His Linux Bible, Ninth Edition, released in
2015, is consistently among the top-selling Linux books today.
During the dotcom days, Chris’s Red Hat Linux Bible sold more than
250,000 copies in eight editions and was twice voted best Linux
book of the year. Other books authored or coauthored by Chris
include the Linux Toolbox series, Linux Toys series, Fedora and Red
Hat Enterprise Linux Bible series, and Linux Troubleshooting Bible
with Wiley Publishing.
With Prentice Hall, Chris helped produce the Negus Software
Solution Series. For that series, Chris wrote Live Linux CDs and
coauthored The Official Damn Small Linux Book. That series also
includes books on web development, Google Apps, and
virtualization.
Chris joined Red Hat in 2008 as an RHCE instructor. For that role,
he became a Red Hat Certified Instructor (RHCI) and Red Hat
Certified Examiner (RHCX). In 2014, Chris became a Red Hat
Certified Architect (RHCA), with certifications in Virtualization
Administration, Deployment and Systems Management, Cluster and
Storage Management, and Server Hardening. In 2011, Chris shifted
from his Linux instructor role back to being a full-time writer for Red
Hat, which he continues to do today.
Early in his career, Chris worked at UNIX System Laboratories and
AT&T Bell Labs with the organizations that produced the UNIX
operating system. During that time, Chris wrote the first official UNIX
System V Desktop system manual and cowrote the Guide to the
UNIX Desktop. For eight years, Chris worked closely with developers
of the UNIX system, from UNIX System V Release 2.0 through
Release 4.2.
Part I: Getting Going with
Containers
Chapter 1. Containerizing
Applications with Docker
In This Chapter:
Understand Docker containers
Learn about challenges in containerization
Understand the components that make up Docker
Start on a path to enterprise-quality containers
Docker is an elegant and beautiful way to package and run
applications. Using your favorite Linux system, you can have Docker
installed and running as a service in just a few minutes. The ease
with which you can then build, run, stop, start, investigate, modify,
and otherwise manipulate containers is, honestly, awesome.
Docker’s ease of use contributed to it becoming one of the most
popular open source projects today. But Docker as a centerpiece for
containerization of the data center has caused the most commotion.
The potential is not less than the reinvention of how individuals and
companies, large and small, create, test, deploy, and manage their
most critical applications.
With containerization also comes the possibility of more efficiently
deploying applications into cloud environments. Like containers
themselves, the operating systems that run containers can be
slimmed down. These new, container-ready host operating systems
no longer have to carry all the dependencies that an application
requires because the container is already holding most of what it
needs to run.
The goal of this book is not only to introduce you to what Docker
is and how it works, but also to expose you to the many ways you
can extend it for special uses. While a single container can be
straightforward to create and deploy, getting multiple containers to
work together and access resources from other containers, and from
the hosts they run on, requires a higher level of complexity. This
Discovering Diverse Content Through
Random Scribd Documents
Now, as they looked up, startled by an uneasy growl from Rusty,
who had just detected the stranger’s presence, and sprang barking
toward the window, the face was hastily withdrawn, and appeared no
more.
CHAPTER XVIII.
THE ARK IS STOLEN.

T he next morning, after eating the very last of their provisions,


which they shared impartially with Rusty, they cast the Ark loose
from its moorings, and allowed it to drift a mile or two down past the
city water front. At length they reached a place of comparative quiet,
amid the bewildering number of steamboats, tugs, and barges, by
which they were now surrounded. It was just below a great bridge
that spanned the river at this point, and here, after half an hour of
anxiety and hard work, they finally succeeded in making their boat
fast to the levee.
Then, not knowing what else to do, they waited patiently for some
hours, in the hope that a customer would appear, and make them an
offer for the Ark. But of all the hurrying throngs who passed the
place, no one paid the slightest attention to them. Uncle Phin had
just decided that it would be necessary for him to go ashore, and in
some way make it known that he had a boat for sale, when a stranger
came walking briskly toward them, and sprang aboard.
Growling savagely, Rusty would have flown at the man, whom he
recognized as the one who had looked into the cabin window the
evening before, had not Arthur seized and held him.
“Good-morning,” said the stranger, politely. “Fine watch dog
you’ve got there.”
“Yes,” replied Arthur, “he is; but I never knew him to want to bite
anybody before.”
“Oh, well,” said the man, “he probably isn’t used to city folks; but
he will get over that. I came to ask if this boat is for sale.”
“Of course it is,” replied the boy, delightedly. “We have been
hoping somebody would come along who wanted to buy it.”
Then they showed the stranger all over the boat, explaining to him
what an unusually fine craft it was, and, before long, had told him all
he wanted to know of their history and plans.
He was a shabbily-dressed man; but they were accustomed to
seeing such people, and never for a moment mistrusted him when he
said that he was looking for just that kind of a boat, in which to take
his family to New Orleans for the winter. They only congratulated
each other, on securing a customer so readily, by exchanging sundry
significant looks and smiles behind his back.
At length he asked their price for the boat, and Uncle Phin,
emboldened by his praise of the craft and evident desire to possess
her, answered that, as boats seemed to be in pretty good demand, he
thought this one ought to be worth twenty dollars.
“Nonsense!” exclaimed the stranger. “Twenty dollars! why, she is
worth fifty, if she is worth a cent, and I couldn’t think of offering any
less for her. Say fifty and we’ll call it a bargain.”
Was there ever such a generous and honest man? Both Arthur and
Uncle Phin thought there never was, as they gladly accepted this
magnificent offer, and thanked him for it besides.
“Now,” said the stranger, “business is business, and I should like to
take possession of the boat at once; while I presume you are anxious
to pursue your journey. If you will just step up-town with me to my
bank, I will pay you the fifty dollars, and on the way I will show you
the station of the railroad that goes to Virginia. Then we’ll get a team
to come down here for your baggage, and you’ll be all right.”
Neither Arthur nor the old negro could think of any particular
baggage that they wished to carry with them, unless it was their
bedding, and Uncle Phin’s axe, and they told the stranger so. He said
they might think of something else after they had got their money,
and that at any rate they had better go up-town with him and secure
it at once.
Arthur suggested that it might not be safe to leave the boat all
alone, and proposed that Uncle Phin go for the money, while he and
Rusty stayed behind to guard it.
“Oh, that’s all right,” said the stranger. “You never knew such
honest folks as live round here. They wouldn’t touch anything that
didn’t belong to them for the world. Besides I want you both to sign
the bill of sale, and the receipt for the money.”
So, after carefully closing the cabin doors and windows, the
trusting old man, and the boy, ignorant as yet of the world’s
wickedness, accompanied the plausible stranger up-town. Arthur led
Rusty by a bit of rope fastened to the leathern collar Uncle Phin had
made for him, and had some difficulty in keeping him at a safe
distance from the stranger, toward whom the dog seemed to have
taken the greatest dislike. Moved by some impulse that he could not
have explained, the boy had also taken his precious book from its
shelf, at the last moment, and now carried it under his arm.
The stranger continued to be very polite and entertaining, as they
walked through the crowded streets, and pointed out several places
of interest, among others the railway station from which they were to
take the train for Virginia.
They walked so far that Arthur began to grow tired, and was very
glad when they at length entered a fine building, above the doorway
of which he read the word “Bank” in large letters. Here both the old
man and the boy were awed and bewildered by the imposing
appearance of the interior into which they were ushered. They
wondered at the number of desks, at which busy clerks sat writing
behind a high and strong iron grating, and at the crowds of people
who stood in long lines before the little windows in it, or passed
hurriedly to and fro. Leading them to a retired corner, out of the
throng, their guide bade them wait there for a few minutes, while he
prepared the papers that it would be necessary for them to sign, and
procured the fifty dollars. Then he mingled with the crowd of men
about them, and disappeared.
For fifteen minutes or so, the attention of the old man and the boy
was fully occupied by the novel scenes about them, and in keeping
Rusty quiet. Then they began to watch anxiously for the stranger’s
return, and to grow somewhat uneasy over his nonappearance. When
half an hour had passed, they were thoroughly alarmed, and began to
walk up and down the crowded space, in front of the iron grating,
peering wistfully into the faces of those who filled it, but without
seeing him whom they sought.
At last a man, who had been closely watching their movements for
some time, stepped briskly up to them, and laying a hand on Uncle
Phin’s shoulder said:
“Come, get out of here, old man. I’ve had my eye on you ever since
you came in, and it’s evident that you have no business here.”
“But, boss, we’se a lookin fer——”
“Yes, I know you are looking for something you won’t find here, so
clear out, or else I’ll have to put you out.”
There was no use offering a further resistance to the detective, and
so the next minute our two friends found themselves in the street,
utterly bewildered, and not knowing which way to turn.
“What do you suppose it all means, Uncle Phin?” asked Arthur.
“Don know, Honey. Hit beat de ole man’s ’sperience, and he don
pear to know nuffin about hit.”
“There is something wrong any way,” said the boy, decidedly, “and
I think the best thing we can do is to get back to the boat as quick as
possible.”
By inquiring they found out in which direction the river lay, and
started to make their way to it as fast as they could. It was a long,
weary walk, and when they finally reached the river, they spent
nearly an hour searching and inquiring before they discovered the
bridge near which the Ark had been left.
Now the boat was nowhere to be seen. In vain did they gaze up and
down the river. They saw other house-boats, and many strange craft
of all descriptions, but nothing that looked in the least like the one
that had sheltered them for so long that it seemed like a very home.
Then the truth began to dawn upon them. Their boat had been
stolen, probably by the very man who had persuaded them to
accompany him up-town, and then deserted them.
This belief was finally confirmed by a good-natured boatman of
whom they made some inquiries, and who told them that the craft
for which they were looking had been boarded and taken away by a
couple of men more than two hours before. They had of course
floated off down the river, and the boatman said the only thing for
them to do was to hire a tug and go after her.
As this would have cost at least twenty dollars, and as they did not
have a cent, it was of course out of the question. What were they to
do? And what was to become of them?
It was now late in the afternoon, and in addition to being very tired
they were very hungry. This latter unpleasant sensation was
evidently shared by poor Rusty, who began to whine and look
pleadingly up into his young master’s face. To add to their misery,
the dense smoke clouds that had been hanging lower and lower over
the city now enveloped it entirely in damp, sooty folds, and a cold,
drizzling rain began to fall.
Poor Arthur felt so utterly wretched that he would have cried, but
for the remembrance that he was a Dale.
CHAPTER XIX.
PENNILESS WANDERERS IN A STRANGE CITY.

F riendless and penniless in a strange city; cold, wet, and hungry,


with night near at hand. This was the present condition of little
Prince Dusty and his Uncle Phin, as, realizing that they had been
cruelly deceived and robbed by the stranger who had proposed to
purchase their boat, they turned slowly away from the river. They
knew not where to go; but, moved by the impulse that prompted
them to seek shelter from the storm, they walked toward the
buildings on a street that fronted the broad, sloping levee.
If they only had something to eat, their future might not seem so
dark. Then they could talk over their situation and decide upon some
plan. Now they could neither talk nor think of anything but the
terrible hunger that turned their strength into weakness and drove
every other thought from their minds.
It was now twenty-four hours since they had eaten a satisfactory
meal; for their mouthful of breakfast had only whetted their appetite
for more. Uncle Phin had known what hunger was before, and was
thus somewhat prepared to bear its sufferings. Even Rusty’s patient
dog nature enabled him to suffer in silence, only revealing his misery
by an occasional whine, and by appealing glances at his young
master’s face. To this same young master, however, the hunger wolf
had never seemed so fierce, nor so terrible, as now. Many a night had
the fatherless boy been sent to bed by his Aunt Nancy without any
supper, and at such times he had been very hungry; but never had he
imagined such a longing for food as he now experienced.
“Oh, Uncle Phin!” he moaned, “can’t you think of any way to get
something to eat? Just a loaf of bread or some crackers. It doesn’t
seem as if I could stand it much longer.”
“Well, Honey! my pore lil honey lamb! de ole man is a rackin his
brain, an a projeckin, an a thinkin, and it’s mo’n likely he’ll strike up
wif some plan dreckly. You see des yeah ’sperience hab kim up
powerful sudden, an its umposserbilities hab tuk me by ’sprise. Now
we might sell dat ar dorg Rusty fer ernough to buy a squar meal, ef
we know’d whar to fin a pusson what wanted a dorg.”
“Sell Rusty, Uncle Phin! Sell my dear little dog! Why, I’d starve
first.”
“Dats it! Dats jes de way I knowed ’t would be,” said the old man,
shaking his head sadly. “Well, dars dat ar book ob yourn. We mighter
——”
“My precious book, that the beautiful lady gave me!” cried the boy.
“Why, Uncle Phin, that’s worse than Rusty. I wouldn’t give it up for
anything in the world; not even for a great heaping plate of hot
buckwheat cakes, with maple syrup on them.”
“Or a fat possum roasted in a hole in de groun?” suggested the old
man, his mouth watering at the thought.
“No, nor a beefsteak with baked sweet potatoes, and hot rolls,” said
the boy, who, under the circumstances, was certainly placing a high
value on his book.
“Or a big dish er hominy smoking frum de kittle wif a plenty er pok
gravy,” added Uncle Phin eagerly, unable to conceive of anything
more likely to tempt a hungry little boy than this.
“No, not for anything that was ever cooked, or ever will be, would I
give up my own dear book,” said Arthur stoutly.
They had found a temporary refuge from the rain in a doorway,
and stood within its shelter during this exchange of the tantalizing
thoughts uppermost in their minds. Nearly opposite to them was a
street lamp that had just been lighted, and they watched the
lamplighter enviously, as he shouldered his flaming torch and
walked away, whistling merrily, doubtless to a home and supper.
Now, as in answer to Arthur’s last remark, Uncle Phin was saying:
“Well, den, Honey, I don see but what we’se got er go hungry twel to-
morrer, when maybe I kin git er job er wood sawin,” there came a
quick rush of feet on the wet flagging. Arthur turned to look at the
flying figure, and gave a little cry of recognition, as the light from the
street lamp fell on its face. At the same instant Rusty recognized in it
his old persecutor, the boy with whom his young master had fought
in the tramps’ camp. With a growl he sprang forward. Arthur still
held the end of his rope, and the dog’s movement was so sudden that
it nearly threw him down. As it was, he stumbled, and the precious
book, so recently the subject of their conversation, fell to the
sidewalk. The next moment another figure, and this time it was that
of Sandy Grimes, the big tramp, rushed past, evidently in pursuit of
his boy, and then all was again quiet.
Recovering himself, and taking a firmer hold on the rope that held
the still excited Rusty, Arthur stepped forward and picked up his
book of fairy tales. As he did so, a bit of dark paper, that seemed to
fall from between its leaves, fluttered to the wet stones, and this the
boy also picked up. Curious to see what it was, he held it to the light
and uttered a cry of incredulous amazement.
It was a bank bill for five dollars; and, although Arthur did not
know it at the time, it was the same one that his friend, Brace Barlow,
had slipped between the leaves of the book on the night that he bade
them farewell. Why Arthur had not discovered it long before, will
always be a mystery that can only be accounted for by the fact that
the book was a large one, and contained many stories, several of
which he had not yet read. Between the leaves of one of these the bill
had probably been all this time, and now, in the hour of the boy’s
sorest need, it came to him as though it were indeed a gift from the
fairy godmother who had written the inscription upon the fly-leaf of
the volume.
Arthur’s excitement was fully shared by Uncle Phin, though with
the old man it assumed a quieter and more reverent form. He said:
“De good Lawd seen de fix we was in, Honey, an He sen dis yeah in
place ob er raben, fer our suppah. Dats what we’se er wantin de
mostes, an dats what we oughter to be gettin de fustes ting.”
CHAPTER XX.
A RAILROAD EXPERIENCE.

T o Uncle Phin’s proposition the boy fully agreed. Even Rusty


seemed to comprehend that his young master’s fortunes had
taken a turn for the better; and, as they started up the street, in
search of a place where they might obtain food, he danced about
them barking joyously.
Before long they discovered a very small and humble bake shop,
kept by a colored aunty, who looked almost as old as Uncle Phin; but
who was as stout as he was thin, and whose head was covered by a
Madras kerchief of vivid reds and yellows. She was not expecting any
customers this stormy evening, and at first regarded the new-comers
with suspicion, evidently fearing that they were about to appeal to
her for charity. This, by the way, as they afterwards learned, was her
name, “Aunt Charity.” She was, however, reassured by the sight of
the five-dollar bill in Uncle Phin’s hand, by the old man’s extreme
politeness, and by Arthur’s honest blue eyes. In spite of his clothes
being rain-soaked and mud-stained, he was so evidently a little
gentleman, that she involuntarily dropped him a curtsey when, in
winning tones, he said: “Please, ma’am, get us something to eat. We
are nearly starved; but we have the money to pay for it, and I think
we would like to have a good deal of most everything you have.”
“To be suttinly, sah! To be suttinly, my pore lamb. You shall hab de
bes Aunt Charity kin skeer up, dreckly,” answered the old woman,
dropping her curtsey, and gazing compassionately at the little fellow.
“Ef you’d like to dry yo’sefs, while I’se er gittin sumpin ready, yo’se
welkum to step inter de kitchun, an set by de fire, Misto——” Here
she paused and looked at Uncle Phin, as though waiting for him to
complete her sentence by introducing himself.
“Phin Dale ob Dalecourt, Ferginny,” said the old man, promptly,
adding, “and dis my lil Marse Arthur Dale Dustin. We is a trabblin to
his granpaw’s, an is to take de kyars fo Dalecourt, soon as we is eatin
our suppah.”
As Aunt Charity had also spent the earlier days of her life in
Virginia, a bond of sympathy was at once established between them,
and she bustled about, with surprising agility for one of her size, to
make the travellers comfortable. She had intended supplying their
wants from the counter and well-filled shelves of her little shop; but,
after they were comfortably seated in the friendly warmth of the
kitchen stove, she decided to make a pot of tea, and then to fry a
rasher of bacon with some eggs. Nor did she neglect their immediate
wants, while preparing these things. Hunger was so plainly stamped
on their faces, that it would have been cruel to keep them waiting a
single minute before beginning to satisfy it. So she gave them each a
big, shiny-topped bun, with currants in it, and when she saw Arthur
breaking off a piece of his for Rusty, she immediately got another for
the hungry dog.
What a pleasant contrast this cheerful, low-ceiled kitchen, with its
glowing stove, presented to the cold, and wet, and darkness of the
streets through which they were wandering so hopelessly but a few
minutes before. How thoroughly Arthur and Uncle Phin appreciated
its comforts, and what glances, expressive of gratitude and complete
satisfaction, they exchanged as they sat on opposite sides of the
stove, well back so as not to interfere with the ponderous but
bustling movements of the mistress of the establishment.
In the darkest corner of the room was a high, calico-curtained
bedstead, from beneath which projected one end of a low trundle-
bed. In this could just be distinguished two little woolly heads, from
which two pairs of wide-open black eyes gazed wonderingly at the
strangers, and the busy scene about the stove.
When Uncle Phin inquired, with an air of well-feigned interest, if
those were her children, Aunt Charity paused in her work for a
moment, and, standing with arms akimbo, regarded them with great
complacency, as she answered: “No, Misto Phin Dale, deys not my
ownly chillun; but deys my gran’chillun, once remobed. You see deir
maw, she my ole man’s fustes wife’s gal, by her fustes husban’. So
when dey came to be twins an’ orfuns at de same time, I wuz deir nex
ob kin, an dey nacherly fell to my sheer ob de estate. Now, I’se gwine
gib ’em a eddicashun, and train ’em up fer de whitewash an
kalsermine bizness.”
Warm and dry, strengthened and refreshed by their supper, of
which little Rusty had eaten his full share and would now have
greatly preferred lying under the stove to going out into the stormy
night, our travellers again set forth on their journey. Had Aunt
Charity’s mite of a house afforded a spare room she would have
invited them to occupy it until morning; but it did not, and she had
no place to offer them. Then, too, Uncle Phin was most anxious to
start at once, now that they had money, in hopes that it would last
until they reached their journey’s end. So interested had Aunt
Charity become in the young lad who was so bravely seeking a
distant home in place of the one where he had been cruelly and
unjustly treated—for Uncle Phin had told her the whole of Arthur’s
history,—that she at first refused to receive any pay for their supper.
Both Arthur and Uncle Phin insisted so strongly that she should, that
at length she consented to take twenty-five cents, but no more. She
also forced into Uncle Phin’s hands a paper bag full of rolls and cakes
for Arthur just as they left, and stood in the doorway watching them
until they were lost to sight in the shadows of the dimly lighted
street.
Aunt Charity had given them directions for reaching the railway
station, so that they had no trouble in finding it. Here they were
quickly bewildered by the hurrying throngs of people and great
trucks of baggage that were being trundled up and down the
platform, the puffing and snorting of engines, and the dazzling white
light of the electric lamps.
At last Uncle Phin ventured to address a man in a cap and blue
coat, whom he took to be one of the railway officials.
“Please, sah,” said the old man, bowing humbly and pulling at the
brim of his tattered hat, “which ob de kyars is er gwine to Ferginny?”
“Which way are you bound?” asked the official, sharply. “East or
west?”
Uncle Phin did not know.
“Let me see your tickets?”
Uncle Phin had none. “De man haint passen ob ’em roun yet,” he
said.
“Are you going to Richmond, Virginia?”
“Near by dar, sah! Clus on to it!” cried the old man, eagerly,
delighted at hearing the familiar name.
“Well, then you want to take the first through train going east, and
it won’t be along till midnight.”
With this the busy railroad man hurried on, leaving our friends
gazing at each other in dismay. Midnight! and now it was only seven
o’clock. What should they do and where should they go to pass those
five hours? They did not dare go very far from the railway station,
and so they wandered aimlessly about in the darkness near it,
growing more weary, more wet, cold, and uncomfortable with each
moment.
At length they paused before an empty freight car, one door of
which was partly open. Why not seek shelter from the storm in it?
Nobody saw them as they climbed into the car, which they found
to be half filled with sacks of corn-meal. On these they made
themselves quite comfortable, and here they decided to wait
patiently until the lighted clock on a tower above the station which
they could see from the car door, should tell them that it was nearly
midnight. Of course they had no idea of going to sleep. That would
never do; for they must watch the clock. How slowly its hands crept
round. Arthur resolutely turned his eyes away from it, determined
not to look again for at least half an hour. When satisfied that that
length of time had elapsed, he glanced at its round yellow face, only
to find that barely five minutes had passed. He spoke of this to Uncle
Phin, but received no answer. The old man was fast asleep.
“Poor Uncle Phin!” said the boy to himself. “He must be very tired,
and I won’t wake him till it’s time to go.”
So Arthur watched the lighted clock until it looked like a moon,
and then he rubbed his eyes to make sure that it was not winking and
laughing at him. And then—and then he too was fast asleep, with one
arm thrown about Rusty’s neck, and the only sounds to be heard
were the patter of rain on the roof of the motionless freight car, and
the regular breathing of its three tired occupants.
An hour later two men, carrying lanterns and wearing rubber coats
that glistened with the wet, came along and paused before the freight
car. One of them consulted a way bill. “Yes, this is it,” he said. “No.
201, corn-meal for Harrisburg. Six sacks to be left at Arden. That’s all
right. Shut her up, Joe. It was mighty careless of those fellows to
leave the door open.”
Then Joe pushed the heavy door to, with a slam. It fastened with a
spring lock, and the men with the lanterns walked away to look up
the rest of their train. A little later an engine came rolling softly along
the wet track to where the car stood. There was a bump, a rattle of
coupling pins and links, a swinging of lanterns, and the car was
drawn away, past the multitude of little red, and green, and yellow
lights twinkling through the rain and darkness like big fire-flies, and
marking the switches.
The car was hauled and pushed hither and thither, and others were
attached to it, until at length a long train was made up. The great
locomotive panted, eager to be off, and its hot breath made little
clouds of fleecy steam, that were edged with flame by the glow from
its open-mouthed furnace. The brakemen were at their posts on the
slippery tops of the cars; the caboose at the rear end of the train
looked warm and comfortable. The red lights, shining like angry
eyes, were hung in position on its sides near the rear end, and freight
train No. 15 was in readiness for a start.
The conductor came from the Train Despatcher’s office with a thin
sheet of yellow paper, on which were written his orders, in his hand.
“No tramps on board to-night, are there, Joe?” he said to his head
brakeman.
“No, sir, not a sign of one. I’ve looked carefully everywhere. It’s too
wet for ’em to travel, I reckon.”
“All right. Let her go.”
Then the conductor swung his glistening lantern, the engineer
pulled the throttle, and Freight No. 15 moved slowly out into the
darkness. Its first stop was at Arden, where it was to side-track and
await the passing of the New York Limited. Here too were to be left
six sacks of meal.
As Brakeman Joe unlocked and pushed open the door of car No.
201, and the light of his lantern flashed into its dark interior, it fell
upon something that caused him to start and exclaim:
“Great Scott! the tramps are travelling after all, and here they are.
A dog too! Well, if that isn’t cold cheek!”
CHAPTER XXI.
CARRIED OFF IN A FREIGHT CAR.

B rakeman Joe did not love tramps. His regular work was hard
enough, goodness knows; and when, in addition to it, he had to
make a thorough examination of the whole train at every stopping-
place, peering, by the light of his lantern, between and underneath
the cars for tramps, who might be stealing a ride, he felt that he had
good cause to dislike them. Sometimes he had hard tussles before
dislodging them from their perches and roosts, and many an ugly
blow had he received while performing this duty. Joe had, therefore,
learned to deal very promptly, not to say roughly, with this portion of
the travelling public whenever he found them on or in the cars under
his charge.
On this particular night he had made sure, before starting, that
there was not a single tramp on the train, and had in consequence
been anticipating a comparatively easy trip. And now he had, as he
supposed, discovered a whole nest of them snugly stowed away in car
No. 201. A dog too! It was aggravating, and, under the
circumstances, it is not to be wondered at that he hustled them out of
there without much regard to their feelings.
Both Arthur and Uncle Phin had been suddenly awakened, and
greatly alarmed, when Brakeman Joe first slammed and locked the
door of the car in which they had taken refuge from the storm. They
had a confused idea that they had been asleep, though for how long
they could not tell, and now they could no longer see the lighted
clock above the railway station. It might even be midnight, and time
for their train to come along for all they knew. They shouted, and
kicked against the locked door, and Rusty barked; but all in vain. The
conductor and Brakeman Joe had walked away before these noises
began, and there was no one else to hear them.
Then the engine came and pushed and pulled the car about until
they had not the slightest idea of the direction in which they were
moving. It might be forward or backward, east or west, for all they
could tell. Nor was their situation improved when the train, of which
car No. 201 finally formed a part, pulled out of the railway yard, and
started on its long journey. They had no idea which way it was going,
and Arthur could have cried as he reflected that they might be
travelling in exactly the opposite direction from that they wished to
take, and might be carried hundreds of miles before their car door
was again unlocked. As he could not do this, because he was a Dale,
he only hugged little Rusty, and tried to be comforted by Uncle
Phin’s assurances “Dat de good Lawd was er gwine ter keer for dem,
jes like He did fer de sparrers, whose hairs was all counted so as dey
shouldn’ fall to de groun.”
Arthur’s unhappiness was increased by the fact that he could
nowhere feel his precious book. It had slipped from his grasp as he
slept, and now was nowhere to be found. Thus the first stage of their
journey by rail was a most unhappy one, and they were glad to forget
their sorrows in the sleep that again overcame them a few minutes
before the train made its first stop.
The Arden station was a very small one, in a lonely place, with no
houses near it. It was only a platform with a freight shed at one end,
and a more forlorn place for a stranger to be left on a dark, stormy
night, could hardly be imagined. Arthur and Uncle Phin were not
conscious of the train stopping here, and were only awakened from
their troubled sleep by the light from Brakeman Joe’s lantern
flashing in their faces. They were just sitting up and gazing at him, in
a bewildered way, when this energetic young man hustled them out
of the car in his roughest manner. It was so rough, in fact, that poor
Uncle Phin, impelled by a violent push, slipped on the wet platform,
and fell heavily. He struck one of his knees such a painful blow that,
for a few moments, he was unable to rise, and lay there groaning.
“Aren’t you ashamed of yourself to treat an old man so!” cried
Arthur to Brakeman Joe, as with flashing eyes and quivering lips he
sprang to his companion’s side, and endeavored to assist him to his
feet.
“Well, what business has the old tramp got to be stealing a ride on
my train?” replied the brakeman, sulkily, though at the same time
bending over Uncle Phin and helping him up.
He was not a bad-hearted young man, this Brakeman Joe; but he
was overworked, and much bothered by tramps. Generally he was
good-natured, and was especially kind and gentle with old people, for
he had an old father at home of whom he was the sole support, and
to whom he was devoted. He had not noticed, in the dim light, that
Uncle Phin was old and white-headed. He had only regarded him as
a tramp, who, as everybody knows, is apt to be young and strong, and
well able to perform the labor that he refuses to undertake out of
sheer laziness. So now he helped the prostrate figure to its feet, said
he hoped the old fellow was not much hurt, and then returned to his
task of dragging the six sacks of meal, that were to be left at Arden,
from the car.
“What’s the matter here, Joe?” asked the conductor of the train,
stepping up at this moment.
“Only a couple of stowaways that I found stealing a ride in this
car,” was the answer.
“Tramps, eh?” said the conductor, sharply, flashing the light from
his lantern upon the two trembling figures who stood behind him. “A
dog, too,” he continued, “and I’ll warrant they stole it. I’ve a mind to
take it in payment for their ride. If this was a town I’d have you
fellows arrested and locked up in less than no time. You, and all your
kind, ought to be killed off for the good of the country. As it is I’ll
leave you here to soak in the rain for the rest of the night, and
perhaps some of the worthlessness will be washed out of you by
morning. Hello! what’s this?”
Here the conductor stooped and picked up a small object over
which Brakeman Joe had stumbled, and which he had sent flying out
on to the platform.
It was a book, and the conductor picked it up, wondering where it
could have come from. “‘Andersen’s Fairy Tales,’” he read aloud,
holding it up to his lantern. “The very book my little Kitty was asking
me to get for her only the other day! Well, if this isn’t a find!” Then,
turning to the fly-leaf, he read aloud: “To Prince Dusty, from——”
Here he was interrupted by Arthur, who sprang forward, and,
stretching out his hand for the book, cried: “Please, sir, it’s mine; and
I should feel dreadfully to lose it, and we aren’t tramps, and didn’t
mean to steal a ride. We got locked in by accident, and we have
money enough to pay for everything, and oh! please don’t leave us
here in this lonely place.”
The conductor stared at the boy in amazement. “Well, you do look
like a ‘little Dusty’ sure enough, though I can’t say that you are
exactly what I should have fancied a Prince was. Who are you,
anyway? And where do you want to go to?”
Then Arthur, who was completely covered with white dust from
the meal sacks on which he had been sleeping, told the conductor, in
as few words as possible, of the object of their journey, and how they
happened to be locked into car No. 201. He finished by repeating that
they had money, and would willingly pay for the privilege of riding
further on the train, provided it was bound east. This last question
was asked most anxiously, for as yet the boy had not the slightest
idea of where they were.
“Bound east!” exclaimed the conductor. “Of course we are, and
there goes the ‘New York Limited’ now.” As he spoke, an express
train, of heavy vestibuled cars, thundered past them, with a roar and
a crash, at such tremendous speed that in a second it was gone, and
its two red eyes, looking backward, seemed to wink mockingly at the
snail-like freight train, as they were whisked out of sight.
“Now,” said the conductor as the roar of the express dying away
permitted his voice to be again heard, “I’ll tell you what I will do. You
say you are not tramps, and didn’t mean to stow away in that car,
and that you have money enough to pay for your trip. That all may be
so, and it may not. At any rate I haven’t time to investigate your story
now, for we must pull out of here at once. So you and the old man
and the dog just tumble into that caboose, and I’ll carry you along a
bit further. We’ll see about paying for the trip when you decide how
far you want to go, and you shall read a story out of your book to
Brakeman Joe and me, to pay for the ride you have already had. But
mind,” he added threateningly as Arthur began to thank him, “if I
find that you have been telling me any lies, I’ll have you arrested and
locked up in the very first town we come to.”
CHAPTER XXII.
SAVING THE KEYSTONE EXPRESS.

C onductor Tobin, of freight No. 15, was one of the biggest-hearted


and most generous men on the road. In fact it was largely owing
to this that he had not long ago been promoted from a freight to a
passenger train. He could not bear the thought of taking a place from
any of his friends, whom he thought needed it more than he did. So
he always held back, and let them step up over his head, and rejoiced
with them in their good fortune, and said he would take his turn next
time. He had a wife and one little girl about Arthur’s age, whose
name was Katherine, but who was called “Kitty” for short; and,
though the conductor’s pay was small, they managed to make both
ends meet, and lived very happily in Harrisburg, in a little cottage
that they only rented, but which it was their great desire to own,
some day. It was so conveniently situated, not far from the railroad,
and yet in such a nice part of the town that Mrs. Tobin often said to
Conductor Tobin that they could not find one more to their liking, if
they should look for a hundred years, and Conductor Tobin agreed
with her.
Like Brakeman Joe, the only persons with whom Conductor Tobin
had no patience, and upon whom he was very severe whenever they
came in his way, were tramps. In the present case he was pleased
with the sweet, honest face of little “Prince Dusty,” a name that
struck his fancy most happily. It seemed a proof of the truthfulness
of Arthur’s claims, that he possessed, and evidently valued, the very
book for which his little girl had expressed a desire. Thus he became
favorably inclined toward our travellers, and offered to help them on
with their journey.
So it happened that, when freight No. 15 pulled slowly and heavily
out from the Arden siding, Arthur and Uncle Phin and Rusty, instead
of being left behind on the storm-beaten platform, were comfortably
seated about the little round stove in the caboose, enjoying its
grateful warmth and very happy over their good fortune.
Soon after starting, Conductor Tobin and Brakeman Joe entered
the caboose, and sat down for a chat with their guests. Uncle Phin
was too fully occupied in nursing his bruised knee to enter very
heartily into the conversation; but Arthur so easily sustained his
share of it, that the trainmen were delighted with his intelligence and
ready wit. After he had told them all that he could about himself, he
began to ask them questions, whereby he gained much information
concerning railroad business in general, and the running of trains in
particular. They allowed him to climb up into the cupola of the
caboose, through the four windows of which he could look out into
the night, ahead, behind, and on both sides. Then they showed him
their red and white lanterns, and set of flags, and explained their
uses. He thus learned that, if any accident happened to their train, it
would be the conductor’s first duty to send a brakeman back on the
track to wave a red lantern, and warn approaching trains of the
danger ahead.
“Would a train always stop if a red lantern was waved across the
track ahead of it?” asked Arthur.
“Of course it would,” was the answer, “for if it didn’t it would get
into trouble.”
Brakeman Joe even went so far as to initiate the boy into the
mysteries of his own peculiar department. Of course he did not invite
him to walk over the wet roofs of the moving train, in order to show
him how the brakes of the freight cars were set up; but he gave him a
lesson on the platform of the caboose that answered every purpose.
Then the trainmen brought out their tin lunch pails, and from
their contents, together with those of the paper bag so thoughtfully
provided by Aunt Charity, the merry party of five, for of course the
always-hungry Rusty was included in it, made a hearty midnight
supper.
Freight No. 15 had stopped several times to drop or pick up loaded
cars; but, as yet, nothing had been said about leaving the guests
behind, or about Arthur reading a story in payment for the earlier
portion of their ride. At length, when they were toiling slowly up a
long, heavy grade, for they were now climbing the western slope of
the Alleghany Mountains, Conductor Tobin claimed the fulfilment of
this promise, and Arthur willingly undertook to read the story of
“The Wild Swans.” Brakeman Joe was at his post in the cupola on
look-out, so of course he could not be expected to listen to the
reading. Nor could the conductor hear very well, above the roar of
the train, though the boy strove to read loudly and clearly. At length,
as it was evident that he was straining his voice, and also that he was
growing very sleepy, kind-hearted Conductor Tobin gently took the
book from his hands, and bade him lie down on a sort of long bench,
covered with a cushion and a blanket, that ran along one side of the
caboose, while he finished the story for himself.
Here, with Rusty nestled close beside him, the tired boy quickly
fell asleep, while Uncle Phin nodded and dozed in a big arm-chair
beside the stove, and the only sounds heard were the panting of the
locomotive, and the rattle of the heavy train as it toiled slowly up the
steep grades.
Somewhere near the summit a stop was made for water. During it
both Conductor Tobin and Brakeman Joe went to the forward end of
the long train for a chat with the engineer. They were still talking
when it was time to start ahead, and both men jumped into the cab
for a moment that they might finish what they were saying. Then
they began to make their way back toward the caboose, walking as
quickly and surely over the swaying roofs of the cars as though they
had been on solid ground.
It had ceased to rain; but thick, damp mist clouds, were driving
over the mountains, and they at first thought this was the reason why
they did not see the green lights, that should show in the back of the
red caboose lanterns. Then they became anxious, and quickened
their steps. When they reached the end of the train their worst fears
were realized. The caboose was no longer there.
The engineer, happening to look back, saw their swinging lanterns.
A sharp, imperative whistle blast called for brakes. For a few
moments there was a harsh grinding of the iron brake shoes against
iron wheels, and then the train came to a standstill. As it did so
Conductor Tobin ran breathlessly up to the locomotive, shouting:
“Back down to the tank! Side-track the train, and run your engine
back after the caboose. It’s broke loose and gone down the grade!
Number 17 is coming up behind us! There isn’t one chance in ten
thousand but what there’ll be a collision! We’ve got to take that one
though, and do what we can.”
Long before he finished speaking Conductor Tobin was in the cab,
and the train was backing rapidly toward the siding. Brakeman Joe
had run back to the little green light at its end, unlocked and thrown
over the lever, so that now a “flying switch” was made, and, while the
train ran in on the siding, the locomotive, previously cut loose from
it, still stood on the main track. Again the lever was thrown over, the
green light, denoting that the main track was open, swung into place,
and the engine seemed to give a great bound as it plunged swiftly
down the grade in pursuit of the runaway caboose.
In the meantime Arthur had been suddenly awakened from his
nap by a peculiar jarring jerk that accompanied the starting of the
train, and by a loud barking from Rusty. For an instant the caboose
stood still, though he could hear the other cars in motion, then it
began to move backwards; at first very slowly, but increasing its
speed with each moment. Although he did not yet realize in the least
what had happened, the boy felt uneasy, and stepping to the door he
looked out. Even to his inexperienced eye the situation was clear at a
glance.
A coupling-pin had broken, and the caboose was running away
down the steep grade the train had just climbed.
“Quick, Uncle Phin!” he shouted, “come here quick!” and the old
man, hobbling to the door, found the boy exerting all of his strength
upon the iron brake wheel.
Together they tugged and strained at it until at length they got the
brake set, after a fashion. Of course not as Brakeman Joe’s powerful
arms could have done it, but so that its iron shoes ground with
considerable force against the wheels.
At first it did not seem to have the slightest effect, and the car still
rushed at a fearful speed down the mountain side, whirling around
the sharp curves with sickening lurches that nearly threw its
passengers off their feet.
Suddenly a new terror was added to the situation. From down in
the valley came the shrill whistle of an approaching train, and they
knew it was climbing the grade toward them on the same track. Now
their runaway car struck a short place of comparative level, and its
speed seemed to slacken.
If they could only set that brake up one more notch! It seemed
impossible; but they did it, and the red sparks began to fly from the
grinding wheels.
They were certainly going slower, and, at last, on the beginning of
an abrupt curve, they stopped. Another hundred feet would have sent
them flying down the steepest grade of the mountain.
Arthur bade Uncle Phin take one of the two red lanterns left in the
car and swing it from the front platform. Then, with the other in his
hand, he jumped to the track, and ran at the top of his speed around
the curve ahead of them. He was not a second too soon, for within a
hundred yards of the caboose he was nearly blinded by the sudden
glare of an approaching headlight. Standing steadily in the middle of
the track he swung his danger signal to and fro, until he could feel
the hot breath of the approaching monster, and then he sprang aside.
Its powerful air brakes were already at work, and the “Keystone
Express,” filled with sleeping passengers, came to a standstill within
a few feet of the runaway caboose, just as the engine from the freight
train bumped softly against it from the other direction.

STANDING STEADILY IN THE


MIDDLE OF THE TRACK HE
SWUNG HIS DANGER SIGNAL
TO AND FRO. (Page 180.)
As Conductor Tobin picked Arthur up in his arms and carried him
back to the caboose the tears were streaming down his face, and he
said: “God bless you, lad! You’ve done a thing this night the oldest
trainman on the road might be proud of doing.”
CHAPTER XXIII.
CROSSING THE ALLEGHANIES.

S o little “Prince Dusty,” by remembering what he had been taught,


and having the common-sense to put it into practice, was able to
prevent a terrible disaster. Some boys of his age would have been so
frightened at finding themselves in a runaway car, plunging madly
down a mountain-side, that they would have become panic-stricken
and utterly powerless to help themselves or others. They would have,
as people say, lost their heads; but Arthur was not one of the kind
who lose their heads. He had been sensibly brought up by his
practical father, and taught to face emergencies coolly and calmly.
Young as he was, he had learned to stop and think “What is the best
thing to be done?” and then to do it promptly to the very best of his
ability. It does not take long to think. If the brain is clear and steady,
a great many thoughts can flash through it in a second; and one
moment thus spent is worth a lifetime of thoughtless action.
It would be absurd to claim that Arthur had not been frightened on
this occasion. He had never been so frightened in his life, and it is to
be hoped that he never will be again; but he was too brave a boy to
allow his fright to obtain control of him. Now that the time for being
cool and calm, and for prompt action, had passed, he felt weak and
faint, and was very glad to be picked up and borne tenderly back to
the caboose, in Conductor Tobin’s strong arms. There Uncle Phin
was waiting to throw his arms about his “lil Marse,” and to “tank de
good Lawd” for letting him be the brave, splendid boy that he was.
The runaway caboose was hauled up to where the rest of its train
was waiting on the siding for it, and the “Keystone Express” followed
slowly. Here it stopped for a few minutes, while its engineer and
conductor, and the conductors of the sleeping-cars, all crowded into
the caboose to see and shake hands with the boy who had saved their
lives, and to thank him with trembling voices. They wanted Arthur
and Uncle Phin and Rusty to go with them, and travel, surrounded
by every comfort and luxury that their train could afford; but Arthur
said he would rather stay where he was. This decision made
Conductor Tobin and Brakeman Joe very happy, for they were so
proud of their young “railroad man,” as they called him, that they
could not bear the thought of parting with him.
So, with many a full-hearted “God bless you!” and “We’ll not forget
you in a hurry,” the trainmen of the “Keystone Express” went back to
their places, and it rolled away over the mountains, without its
sleeping passengers being any the wiser for what had happened. Nor
did they ever know of the danger they had escaped; for passengers on
railway trains are never told, if it can be helped, of their narrow
escapes from accidents. It might make them timid about riding in the
cars.
Only one passenger knew. He was an elderly gentleman, who,
unable to sleep, had been lying in a lower berth, gazing out into the
darkness through his uncurtained window. He knew of the sudden
and unusual stopping of the train, had seen the swinging lanterns,
and had noticed the engineer and conductors of his own train
crowding into the caboose of Freight No. 15. When the express was
once more in motion, he called the porter of the sleeping-car, and
made him tell all he knew of what had taken place.
When the story was finished, the elderly gentleman sighed
regretfully, and said he wished he had known of it in time to go and
see that boy for himself. He had no boys of his own, and had never
cared much for them; but recent circumstances had caused him to
change his mind, and long for one. He had even come to regard all
boys with interest, and now wished he might have known the brave
little fellow whose courage and promptness of action had, in all
probability, saved his life.
After the express had passed on, and Freight No. 15 was again
pounding heavily along over the steel rails, Conductor Tobin and
Brakeman Joe sat by the little caboose stove and talked over the
events of the past half hour. Arthur lay quietly on the blanket-
covered bench, with Rusty curled up at his feet, and Uncle Phin,
sitting close beside him, held one of his hands, as though fearful of
losing him.
The two men told each other what a wonderful thing it was that
these stowaways had chosen their particular train, and how thankful
they were that they had not left them at Arden, as they at first
intended. They could not tire of praising the boy for remembering
what they had just taught him, and for being so ready to act upon it.
They praised Uncle Phin, too, for his share of the night’s work, and
even little Rusty was petted and praised for barking to wake Arthur
when the caboose broke loose.
Brakeman Joe said that the boy was so evidently cut out for a
railroad man that it would be a pity if he should ever try to become
anything else. He even went so far as to offer Arthur and Uncle Phin
a home with his old father, promising to teach the former all he knew
of railroading, and to get him a place as water-boy on a passenger
train.
Arthur gratefully declined this offer, and said he thought they had
better keep on with their journey to the home in which he belonged.
At the same time a genuine love for railroads and everything
connected with them, even including their dangers, had entered his
heart that night, and he determined that some day he would not only
be a railroad man, but a famous one.
They had now passed the summit of the Alleghanies, and day was
dawning. As the night mists rolled away, and the magnificent
panorama of mountain, hill, and valley began to unfold beneath
them, Arthur climbed up into the cupola to watch it. He had never
witnessed so glorious a sunrise as that now flashed back by the clear
waters of the Juniata, which laughed and rippled beside the track. As
he drew in long breaths of the fresh mountain air and gazed on the
marvellous beauty of the ever-widening landscape, the mere fact of
being alive and able to enjoy it all filled him with happiness.
During the morning Freight No. 15 rumbled heavily across the
Susquehanna River and into the beautiful old city of Harrisburg, the
proud capital of one of the greatest and wealthiest States of the
Union. Here it was turned over to a new crew of trainmen, while
Conductor Tobin, Brakeman Joe, and the others who had brought it
thus far were at liberty to seek their homes and a well-earned rest.
Conductor Tobin insisted upon taking our travellers home with
him, and, though Brakeman Joe would gladly have had them as his
guests, he was obliged to yield to the claims of his superior officer. So
they all went to the neat little cottage, not far from the railroad,
where, when warm-hearted Mrs. Tobin learned from her husband
what Arthur and Uncle Phin and Rusty had done, she took the boy at
once into her arms and heart, and shook hands with the old negro,
and petted the dog, and said that her house was honored by having
such distinguished guests under its roof. Then she prepared an extra
fine dinner for the occasion, and even little Rusty was allowed to sit
at the table and have his share of it, “just like folks,” as Mrs. Tobin
said.
After dinner Arthur won Kitty’s heart by reading stories to her out
of his precious book, and Uncle Phin won it by carving toys out of
bits of soft pine with his jack-knife, and Rusty won it by performing
all his tricks and playing with her.
That evening Conductor Tobin produced a railroad folder that
contained a map. On this they traced out the course of the journey
yet to be undertaken to the point on the James River not far from
Richmond, Virginia, where Uncle Phin said Dalecourt was located.
When their route had been carefully marked in red ink the map was
entrusted to Arthur for their future guidance.
CHAPTER XXIV.
A BRAVE STRUGGLE WITH POVERTY.

T he following day Conductor Tobin introduced his guests to a


freight conductor on the Northern Central road, who, when he
had heard their story, willingly consented to carry them on his train,
which was to go out that night, as far as Baltimore.
This he did; and when they got there, they had not spent one cent
of the money with which they had left Pittsburgh, and yet they had
accomplished two thirds of their journey.
As the weather was pleasant, they decided to walk from Baltimore,
at least as far as Washington. So the Northern Central conductor set
them down at a small station just outside the city limits of Baltimore.
Then, after pointing out the direction they were to take, he bade
them good-by, and left them to pursue their journey on foot, with
light hearts and a firm faith that they would speedily accomplish it.
From the very outset of this walk Arthur began to realize the value
of the information given him long before, in the tramps’ camp on the
Alleghany, regarding their peculiar signs, as inscribed on fences and
gate-posts. While he and Uncle Phin had some money, it was so very
little for the long journey still ahead of them, that they must use
every means possible to save it. They did not expect to live at first-
class hotels during their travels, or even in cheap lodging-houses.
They only hoped to obtain permission to sleep in barns, or under
haystacks if nothing better offered, and to buy their food of such
farmers’ wives as would let them have what was left over from their
own tables.
Therefore it became very important for them to know who were
the liberal, good-natured people along their route, and which were
the ones from whose doors they would be chased away by dogs, or
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebooknice.com

You might also like