Born in Princess Anne County, Virginia, Walke was appointed a midshipman on February 1, 1827, and reported for duty at the Gosport Navy Yard, Virginia. He received his initial naval training at Gosport and, from July 1827 to November 1828, cruised the Caribbean in sloop Natchez in the campaign against pirates in that area. He made a voyage to the Mediterranean Sea on Ontario between August 1829 and November 1831. Walke received his warrant as a passed midshipman on July 12, 1833, and, after several months of post-sea duty leave, transferred to duty ashore at the Philadelphia Naval Shipyard on March 7, 1834. Between January 1836 and June 1839, he cruised the Pacific Squadron in the 74-gun ship of the line North Carolina, primarily along the western coast of South America protecting American commerce during a period of unrest caused by strained relations between the United States and Mexico and the war between Peru and Chile.
During service in the receiving ship at New York, Walke was promoted to lieutenant before reporting on board Boston on October 5, 1840. While Walke was assigned to that sloop of war, she made a cruise to the East Indies. Returning home in 1843, he went ashore for an extended leave before returning to sea in the brig Bainbridge in May 1844 for a cruise along the Brazilian coast.
He returned home early in 1846 and, after a year assigned to the receiving ship at New York, made an eight-month voyage in Vesuvius during which his ship participated in the Mexican–American War, blockading Laguna and supporting landings at Tuxpan and Tabasco. In October 1847, Lt. Walke went home for another extended leave after which he reported back to the receiving ship at New York on September 22, 1848.
On June 23, 1849, he returned to sea in Cumberland for a cruise to the Mediterranean Sea which lasted until mid-January 1851. Following a post-voyage leave, he reported to the Naval Observatory on April 22 for a brief tour before beginning further duty in the receiving ship at New York Harbor. That tour lasted three years, from July 17, 1851 to July 17, 1854, but consisted of two distinct periods separated by a short tour of duty in St. Mary's during September 1853.
In January 1861, as the Civil War approached, Walke was in command of Supply at Pensacola, Florida. On the 12th, Captain James Armstrong surrendered the navy yard to Confederate forces from Alabama and Florida. After providing temporary support for the defenders of Fort Pickens who refused to follow Armstrong's example, Walke took off some of the loyal sailors and navy yard employees and got underway for New York on the 16th. After arriving at New York on February 4, the commander and his ship loaded supplies and reinforcements for Fort Pickens. Supply set sail on March 15 and anchored near the fort on April 7 and landed the troops and supplies.
Operations supporting the nascent Union blockade occupied the ship for the next month, after which Walke received orders to New York to take command of one of the Navy's newly acquired steamers. Following that service—during the summer of 1861—and a four-day tour as lighthouse inspector for the 11th District early in September, Walke headed west in response to orders to special duty at St. Louis, Missouri.
That assignment proved to be the command of Tyler, one of the river gunboats of the Army's Western Flotilla. In September and October, he took his gunboat downriver to bombard Confederate shore batteries at Hickman and Columbus in western Kentucky, and traded a few shots with the Confederate gunboat CSS Jackson. Early in November, his ship supported Ulysses S. Grant's move on the Southern camp at Belmont, Missouri, escorting troop transports, bombarding shore batteries and, finally, covering the withdrawal of Grant's forces from the Battle of Belmont.
In mid-January 1862, Commander Walke assumed command of the ironclad warship Carondelet, also assigned to the Western Flotilla. In February 1862, during his tenure as Carondelet's commanding officer, Walke led her during the captures of Forts Henry and Donelson which guarded the Tennessee and Cumberland Rivers, respectively. In April, he led her in the passing of heavily fortified Island Number Ten and in the attack on and spiking of shore batteries below New Madrid, Missouri, in Battle of Island Number Ten. From April through the end of June, his ship participated in the drawn-out series of operations against Plum Point Bend, Fort Pillow, and Memphis. On July 15, Commander Walke almost met his match when the Confederate ironclad ram CSS Arkansas made its move down the falling Yazoo River toward Vicksburg. Carondelet supported by Queen of the West and Walke's former command, Tyler, engaged the Southern ironclad. During the brisk opening exchange, Carondelet suffered heavy damage and was forced out of action in a disabled, though floating, condition. Queen of the West retreated immediately, leaving only little Tyler to face the powerful ram. The Southern warship, consequently, made it safely to the stronghold at Vicksburg.
On August 4, 1862, Walke was promoted to captain and assumed command of the ironclad ram Lafayette then under conversion from a river steamer at St. Louis. He put her in commission on February 27, 1863, and commanded her during the dash past Vicksburg on April 6 and during the duel with shore batteries at Grand Gulf on the 29th. That summer, his ship briefly blockaded the mouth of the Red River early in June.
On July 24, Captain Walke was ordered back to the East Coast to prepare the sidewheeler Fort Jackson for service. He put her in commission on August 18, 1863 at New York, but his command of that steamer proved brief. On September 22, he was transferred to the screw sloop Sacramento, which he commanded through the final two years of the Civil War, cruising the South American coast in search of Confederate commerce raiders. On August 17, 1865, he was detached from Sacramento and returned home to await orders.
On July 31, 1866, Walke was promoted to commodore. From May 1, 1868 until April 30, 1870, he commanded the naval station at Mound City, Illinois. While waiting orders to his next assignment, Walke was promoted to rear admiral on July 20, 1870. He was placed on the retired list on April 26, 1871. However, his service to the Navy did not end, for, on that same day, he reported for some variety of special duty under the senior admiral of the Navy, Admiral David Dixon Porter. That tour lasted until October 1, at which time he was appointed to the United States Lighthouse Board.
Detached on April 1, 1873, he retired to a life of writing and sketching until his death in Brooklyn, New York.
He was a companion of the New York Commandery of the Military Order of the Loyal Legion of the United States.
Three ships in the United States Navy were named USS Walke for him.